8000 v3.5.0 , DocumentHandler, Undefined index: revision · Issue #269 · arangodb/arangodb-php · GitHub
[go: up one dir, main page]

Skip to content
v3.5.0 , DocumentHandler, Undefined index: revision  #269
Open
@RysQ

Description

@RysQ

if (isset($params[ConnectionOptions::OPTION_REPLACE_POLICY]) &&
$params[ConnectionOptions::OPTION_REPLACE_POLICY] === UpdatePolicy::ERROR
) {
if (null !== $options['revision']) {
$params['ignoreRevs'] = false;
$headers['if-match'] = '"' . $options['revision'] . '"';
}
}

Line 651 may cause "Undefined index" Notice

'revision' option may not be set in $options param of put. Docs of replace and replaceById methods doesn't mention it should be provided. Instead it points out to Document's _rev.

So please consider (accordingly to patch method), to base the condition on something like:

$revision = $document->getRevision();
if (null !== $revision) { ... 

or provide 'revision' option/param within replace or replaceById methods (ie. like it's done in remove)


The issue doesn't appears in < 3.5.0 , since in previous versions includeOptionsInParams in ArangoDBClient/Handler returns empty array when its $options param is empty.
Condition result:

if (isset($params[ConnectionOptions::OPTION_REPLACE_POLICY]) && 
    $params[ConnectionOptions::OPTION_REPLACE_POLICY] === UpdatePolicy::ERROR 
)

is always false then

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

      0