It seems there is a bug that is caused by replication script cache. When calling EVALSHA of script that doesn't exist in replication script cache the command used for script call is rewritten to EVAL for slave propagation. After the script call is done the rewritten command is pushed to SLOWLOG. When there are no slaves connected and the AOF is disabled the replication script cache is flushed every 1 second so many script calls will be logged wrongly. So when examining SLOWLOG entries it can be confusing what commands are used especially when you are debugging script performance like me;) In other hand is it really necessary to update the replication script cache if there are no slaves connected?
Comment From: madolson
Thanks for reporting this, looks like a more general issue.