I hate cases when I had made a code fix but the code fix is going live in 4 days and customer cant wait for the fix. Now you have to go and fix the data manually or give some workaround. Anyways today ran into an issue where due to some recent code change a memcache key was not getting flushed and the code fix for that is supposed to go live in 3 days. But a production support guy called me to fix it for customer and I can understand frustration on part of customer. So the choices were:
1) Ask the production support guy to flush the key in all memcached instances with help of ops.
2) Manually go myself and flush the key. This could take anywhere from 10-15 min plus its boring doing data cleanup.
3)Flush the entire memcached cluster. This is a big NO NO.
So I was about to go on path #2 and realized that there is a internal REST API that the production support guy can call to flush arbitary key from memcached. Hurray I just told him what keys to flush and he knew how to call such apis. So Thanks to whoever wrote that internal api thinking about its future use and making it generic, it saved me some time :).
1) Ask the production support guy to flush the key in all memcached instances with help of ops.
2) Manually go myself and flush the key. This could take anywhere from 10-15 min plus its boring doing data cleanup.
3)Flush the entire memcached cluster. This is a big NO NO.
So I was about to go on path #2 and realized that there is a internal REST API that the production support guy can call to flush arbitary key from memcached. Hurray I just told him what keys to flush and he knew how to call such apis. So Thanks to whoever wrote that internal api thinking about its future use and making it generic, it saved me some time :).
Comments
Post a Comment