Skip to content

Can't get&delete record that doesn't have key (value) but has digest #71

Description

@KMVPrograms

Hi, I have an issue with PHP8.3 (latest 1.4.0 aerospike extension + aerospike-connection-manager) and getting/deleting of rows without key.
I started the latest Aerospike DB (Aerospike Community Edition build 8.1.0.1) using docker "docker run -d --name aerospike -p 3000-3002:3000-3002 container.aerospike.com/aerospike/aerospike-server:latest".

I created a record using:
$wp = new Aerospike\WritePolicy();
$res = $aerospike->append($wp, 'testset', [new Aerospike\Bin('logs', 'test123')]);

I can see this row using aql, and can get the $key using
$pf = Aerospike\PartitionFilter::all();
$query_policy = new Aerospike\QueryPolicy();
$statement = new Aerospike\Statement('test', 'testset', $filter, $cols);
$res = $aerospike->query($query_policy, $pf, $statement);
$key = $res->next()->getKey()

Aerospike\Key Object
(
[digest] => c4f658c24bdc405e2c7deb5d81b42a661b45becf
[namespace] => test
[setname] => testset
[value] =>
[partition_id] => 1732
)

But when I try to get/delete with this key it gets nothing. Is it an expected behavior? Could I change anything in my PHP code to make it work?

Note1: It works properly if I use $wp->setSendKey(true); on append action
Note2: It worked properly on previous Aerospike extension for PHP 7 for digest only rows.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions