This often happens if the procedure mixes insert/update and select statements, and autocommit has been turned off. This is quite a common question from people using Perl where the script connects with autocommit turned off:
my $dbh = DBI->>connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS}, { RaiseError => 1, AutoCommit => 0 } ) || die "Database connection failed: $DBI::errstr";