• Binbin's avatar
    GEO* STORE with empty src key delete the dest key and return 0, not empty array (#9271) · 86555ae0
    Binbin authored
    
    
    With an empty src key, we need to deal with two situations:
    1. non-STORE: We should return emptyarray.
    2. STORE: Try to delete the store key and return 0.
    
    This applies to both GEOSEARCHSTORE (new to v6.2), and
    also GEORADIUS STORE (which was broken since forever)
    
    This pr try to fix #9261. i.e. both STORE variants would have behaved
    like the non-STORE variants when the source key was missing,
    returning an empty array and not deleting the destination key,
    instead of returning 0, and deleting the destination key.
    
    Also add more tests for some commands.
    - GEORADIUS: wrong type src key, non existing src key, empty search,
      store with non existing src key, store with empty search
    - GEORADIUSBYMEMBER: wrong type src key, non existing src key,
      non existing member, store with non existing src key
    - GEOSEARCH: wrong type src key, non existing src key, empty search,
      frommember with non existing member
    - GEOSEARCHSTORE: wrong type key, non existing src key,
      fromlonlat with empty search, frommember with non existing member
    Co-authored-by: default avatarOran Agra <oran@redislabs.com>
    86555ae0
geo.tcl 28.7 KB