aerospike / aerospike-client-go

Aerospike Client Go
Apache License 2.0
429 stars 199 forks source link

Scanall of aerospike go client is not returning any values #372

Closed kvc-1 closed 1 year ago

kvc-1 commented 2 years ago

Aerospike tool version - 6.3 Aerospike go client version - v6.0.0 From the Aql portal: csduser@kvc1-db-0:/tmp$ aql -UdbUser -Pn0k1addedbsite2 -h csd-db.csd1.svc.cluster.local Seed: csd-db.csd1.svc.cluster.local User: dbUser Config File: /etc/aerospike/astools.conf /home/csduser/.aerospike/astools.conf Aerospike Query Client Version 5.2.0 C Client Version 5.2.0 Copyright 2012-2020 Aerospike. All rights reserved. aql> select * from common."CSDServiceRegistry" +-------------------+--------+------------+---------------+----------+-----------------+------------+----------------------------------+-------------------------------+------------+ | upTime | $dummy | csdVersion | schemaVersion | memUsage | ipAddress | svcInst | podName | updateTime | asrVersion | +-------------------+--------+------------+---------------+----------+-----------------+------------+----------------------------------+-------------------------------+------------+ | "PT168H57M7.588S" | 0 | "22.5" | 22050000039 | 21 | "192.168.13.42" | "diasdcfg" | "kvc1-diasdcfg-56589d999b-sjlxb" | "2022-05-17T12:37:21.557836Z" | "21.12.2" | +-------------------+--------+------------+---------------+----------+-----------------+------------+----------------------------------+-------------------------------+------------+ 1 row in set (0.176 secs)

OK

aql>

code :

            cpolicy := as.NewClientPolicy()
            cpolicy.User = "dbUser"
            cpolicy.Password = getaerospikepasswd()
            host := getaerospikehostname()
            fmt.Println("User %s Password %s host %s", cpolicy.User, cpolicy.Password, host)
            port := 3000
            var err error
            var client *as.Client
            client, err = as.NewClientWithPolicy(cpolicy, host, port)

            if err != nil {
                    Log(ERR, "Could not connect to aerospike DB")
                    time.Sleep(30 * time.Second)
                    return
            }
            //client := getaerospikeclient()
            recordset, err := client.ScanAll(nil, "common", "CSDServiceRegistry")
            if err != nil {
                    Log(ERR, "Couldnot get Service Registry from aerospike DB")
                    time.Sleep(30 * time.Second)
                    return
            }

for res := range recordset.Results() { if res.Err != nil { Log(ERR, "Scan Error: "+res.Err.Error()) } else { podType := fmt.Sprintf("%v", res.Record.Bins["svcInst"]) podName := fmt.Sprint(res.Record.Bins["podName"]) address := fmt.Sprint(res.Record.Bins["ipAddress"])

I dont seen any error logs from go client . And also in aerospike . BUt 0 records are returned

komalarg2010 commented 2 years ago

facing same issue, could someone please help

khaf commented 2 years ago

I could not reproduce this issue before, so I was giving it a bit of time to see if someone else reports it. How many nodes does your cluster have? Which server version and edition? Which Go client version?

komalarg2010 commented 2 years ago

Server Version : 6.3 aerospike-client-go version : 5.0.0

Two nodes in cluster..

I can see records when queried via aql - scanall returns no error, no result.

khaf commented 2 years ago

The latest server version is 6.0.0.0. Did you mean 5.3?

komalarg2010 commented 2 years ago

asinfo -v build 5.6.0.11

khaf commented 2 years ago

Could you please include your config file as well? The normal configs we test on do not reproduce the issue.

kvc-1 commented 2 years ago

csduser@kvc3-db-0:/tmp$ cat /configs/aerospike.conf

aerospike configuration

        # Aerospike database configuration file.

    # This stanza must come first.
    # Seting transaction-pending-limit much higher than default of 20, for mate update design
    # with very heavy hits on the few ASQCursorSet records.  This now can absorb DB hiccups
    service {
        user csduser
        group csduser
        run-as-daemon
        paxos-single-replica-limit 1
        pidfile /opt/aerospike/NOKIAaero.pid
        service-threads 4
        proto-fd-max 15000
        batch-max-requests 10000
        advertise-ipv6 true
        node-id a0
        sindex-gc-period 1000
        sindex-gc-max-rate 250
        cluster-name  site1
    }

    logging {
        console {
            context any info
        }
        file /commonlogstore/csd-db-aerospike/DBApplication.log {
            context any info
        }

    }

        security {
                 enable-security true
        }

        network {
            service {
                address any
                port 3000
            }
        fabric {
            address any
            port 3001
        }

        heartbeat {
            protocol v3
            mode mesh
            address any

        mesh-seed-address-port kvc3-db-0.csd-db-aerospike-mesh 3002
        mesh-seed-address-port kvc3-db-1.csd-db-aerospike-mesh 3002
            port 3002
            interval 150
            timeout 10
        }

    }

    namespace common {
         read-consistency-level-override all
         replication-factor 2
         memory-size 10M
         default-ttl 0
         high-water-disk-pct 70
         high-water-memory-pct 70
         tomb-raider-eligible-age  21600
         tomb-raider-period 5400
         migrate-sleep 20
         nsup-period 120

         storage-engine device {
             file /opt/aerospike/data/common01.data
             file /opt/aerospike/data/common02.data
             file /opt/aerospike/data/common03.data
             file /opt/aerospike/data/common04.data
             file /opt/aerospike/data/common05.data
             file /opt/aerospike/data/common06.data
             filesize 340M
             data-in-memory true
             max-write-cache 128M
             defrag-lwm-pct 50
             defrag-sleep 15000
             tomb-raider-sleep 30000
         }
    }

    namespace dsc {
         read-consistency-level-override all
         replication-factor 2
         memory-size 340M
         default-ttl 0
         high-water-disk-pct 70
         high-water-memory-pct 70
         tomb-raider-eligible-age  21600
         tomb-raider-period 5400
         migrate-sleep 20
         nsup-period 120

         storage-engine device {
             file /opt/aerospike/data/dsc01.data
             file /opt/aerospike/data/dsc02.data
             file /opt/aerospike/data/dsc03.data
             file /opt/aerospike/data/dsc04.data
             file /opt/aerospike/data/dsc05.data
             file /opt/aerospike/data/dsc06.data
             filesize 340M
             data-in-memory true
             max-write-cache 128M
             defrag-lwm-pct 50
             defrag-sleep 15000
             tomb-raider-sleep 30000
         }
    }

    namespace dsclocal {
         read-consistency-level-override all
         replication-factor 2
         memory-size 340M
         default-ttl 0
         high-water-disk-pct 70
         high-water-memory-pct 70
         tomb-raider-eligible-age  21600
         tomb-raider-period 5400
         migrate-sleep 20
         nsup-period 120

         storage-engine device {
             file /opt/aerospike/data/dsclocal01.data
             file /opt/aerospike/data/dsclocal02.data
             file /opt/aerospike/data/dsclocal03.data
             file /opt/aerospike/data/dsclocal04.data
             file /opt/aerospike/data/dsclocal05.data
             file /opt/aerospike/data/dsclocal06.data
             filesize 340M
             data-in-memory true
             max-write-cache 128M
             defrag-lwm-pct 50
             defrag-sleep 15000
             tomb-raider-sleep 30000
         }
    }

    namespace dscglobal {
         read-consistency-level-override all
         replication-factor 2
         memory-size 340M
         default-ttl 0
         high-water-disk-pct 70
         high-water-memory-pct 70
         tomb-raider-eligible-age  21600
         tomb-raider-period 5400
         migrate-sleep 20
         nsup-period 120

         storage-engine device {
             file /opt/aerospike/data/dscglobal01.data
             file /opt/aerospike/data/dscglobal02.data
             file /opt/aerospike/data/dscglobal03.data
             file /opt/aerospike/data/dscglobal04.data
             file /opt/aerospike/data/dscglobal05.data
             file /opt/aerospike/data/dscglobal06.data
             filesize 340M
             data-in-memory true
             max-write-cache 128M
             defrag-lwm-pct 50
             defrag-sleep 15000
             tomb-raider-sleep 30000
         }
    }

    namespace dscdra {
         read-consistency-level-override all
         replication-factor 2
         memory-size 340M
         default-ttl 0
         high-water-disk-pct 70
         high-water-memory-pct 70
         tomb-raider-eligible-age  21600
         tomb-raider-period 5400
         migrate-sleep 20
         nsup-period 120

         storage-engine device {
             file /opt/aerospike/data/dscdra01.data
             file /opt/aerospike/data/dscdra02.data
             file /opt/aerospike/data/dscdra03.data
             file /opt/aerospike/data/dscdra04.data
             file /opt/aerospike/data/dscdra05.data
             file /opt/aerospike/data/dscdra06.data
             filesize 340M
             data-in-memory true
             max-write-cache 128M
             defrag-lwm-pct 50
             defrag-sleep 15000
             tomb-raider-sleep 30000
         }
    }

    namespace slfdra {
         read-consistency-level-override all
         replication-factor 2
         memory-size 340M
         default-ttl 0
         high-water-disk-pct 70
         high-water-memory-pct 70
         tomb-raider-eligible-age  21600
         tomb-raider-period 5400
         migrate-sleep 20
         nsup-period 120

         storage-engine device {
             file /opt/aerospike/data/slfdra01.data
             file /opt/aerospike/data/slfdra02.data
             file /opt/aerospike/data/slfdra03.data
             file /opt/aerospike/data/slfdra04.data
             file /opt/aerospike/data/slfdra05.data
             file /opt/aerospike/data/slfdra06.data
             filesize 340M
             data-in-memory true
             max-write-cache 128M
             defrag-lwm-pct 50
             defrag-sleep 15000
             tomb-raider-sleep 30000
         }
    }

    # Objects in this namespace are used by the local site only.
    namespace cnsba {
        read-consistency-level-override all
        replication-factor 2
        memory-size 120m
        default-ttl 0
        high-water-disk-pct 70
        high-water-memory-pct 70
        tomb-raider-eligible-age  21600
        tomb-raider-period 5400
        migrate-sleep 20
        nsup-period 120

        storage-engine device {
            file /opt/aerospike/data/cnsba01.data
            file /opt/aerospike/data/cnsba02.data
            file /opt/aerospike/data/cnsba03.data
            file /opt/aerospike/data/cnsba04.data
            file /opt/aerospike/data/cnsba05.data
            file /opt/aerospike/data/cnsba06.data
            filesize 20m
            data-in-memory true
            max-write-cache 64M
            defrag-lwm-pct 50
            defrag-sleep 15000
            tomb-raider-sleep 30000
        }
    }

    # Objects in this namespace are used by the local site only.
     namespace sepp {
        read-consistency-level-override all
        replication-factor 2
        memory-size 10M
        default-ttl 0
        high-water-disk-pct 70
        high-water-memory-pct 70
        tomb-raider-eligible-age  21600
        tomb-raider-period 5400
        migrate-sleep 20
        nsup-period 120

        storage-engine device {
            file /opt/aerospike/data/sepp01.data
            file /opt/aerospike/data/sepp02.data
            file /opt/aerospike/data/sepp03.data
            file /opt/aerospike/data/sepp04.data
            file /opt/aerospike/data/sepp05.data
            file /opt/aerospike/data/sepp06.data
            filesize 340M
            data-in-memory true
            max-write-cache 128M
            defrag-lwm-pct 50
            defrag-sleep 15000
            tomb-raider-sleep 30000
        }
     }
malphi commented 1 year ago

Based on my test: it doesn't work in the master branch. Change to v6.6 fixed.

Aerospike Query Client Version 8.2.0 C Client Version 6.3.0

khaf commented 1 year ago

Thanks for the update. Unfortunately I haven't been able to reproduce the issue, so I can't tell what causes the problem. Glad that the new version has resolved the issue.

khaf commented 1 year ago

Closing the ticket.