Table names and secondary index names are not following DynamoDB limitation

Bug #1271576 reported by Ilya Sviridov
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
MagnetoDB
Fix Released
Low
Nuno Santos

Bug Description

According to DynamoDB limits document [1] it is allowed to create tables and secondary indexes with a-z, A-Z, 0-9, '_' (underscore), '-' (dash), and '.' (dot) characters. Also names can be between 3 and 255 characters long.

[1] DynamoDB limits http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html

MagnetoDB log

2014-01-22 07:46:06.565 11572 ERROR magnetodb.storage.impl.cassandra_impl [-] Error executing query CREATE INDEX ilya_dynamo_geo_table1_geohash-index ON "default_tenant".'dynamo_geo_table1" ("user_geohash"):line 1:43 mismatched input '-' expecting K_ON

Tags: dynamodb-api
Changed in magnetodb:
importance: Undecided → Medium
Dmitriy Ukhlov (dukhlov)
Changed in magnetodb:
assignee: nobody → Maksym Iarmak (miarmak)
Maksym Iarmak (miarmak)
Changed in magnetodb:
assignee: Maksym Iarmak (miarmak) → Dmitriy Ukhlov (dukhlov)
tags: added: dynamodb-api
Changed in magnetodb:
milestone: none → 2.0.2
Changed in magnetodb:
milestone: 2.0.2 → 2.0.3
Changed in magnetodb:
milestone: 2.0.3 → 2.0.4
Changed in magnetodb:
milestone: 2.0.4 → next
description: updated
Changed in magnetodb:
assignee: Dmitriy Ukhlov (dukhlov) → nobody
importance: Medium → Low
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on magnetodb (master)

Change abandoned by Nuno Santos (<email address hidden>) on branch: master
Review: https://review.openstack.org/125445

Revision history for this message
Rushi Agrawal (rushiagr) wrote :

^^ is not in an 'abandoned' state any more :)

Are we adding this limitation only to the DynamoDB (AWS) API? Or also to MagnetoDB (OpenStack) API too? Since we're saying that MagnetoDB API is going to be NOT same as DynamoDB API, and we make our own choices w.r.t our API, I don't think it makes sense to impose DynamoDB API's restrictions to MagnetoDB API

Changed in magnetodb:
milestone: next → none
Nuno Santos (nunosantos)
Changed in magnetodb:
assignee: nobody → Nuno Santos (nunosantos)
Changed in magnetodb:
milestone: none → kilo-1
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to magnetodb (master)

Reviewed: https://review.openstack.org/125445
Committed: https://git.openstack.org/cgit/stackforge/magnetodb/commit/?id=2e2125b409a31c30f1edd4c70c3aa3c60c617006
Submitter: Jenkins
Branch: master

commit 2e2125b409a31c30f1edd4c70c3aa3c60c617006
Author: Nuno Santos <email address hidden>
Date: Tue Oct 28 15:41:57 2014 -0400

    Additional validation; UUIDs as internal table names

    Restrict keyspace, index, table, and attribute names to valid characters,
    and minimum and maximum lengths as per
    http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html

    Use UUIDs as internal table / column family names in Cassandra
    implementation, to deal with different length limits and valid characters.

    Closes-Bug: #1308528
    Closes-Bug: #1271576
    Closes-Bug: #1298588
    Closes-Bug: #1298633

    Implements blueprint cassandra-uuid-internal-names

    Change-Id: I47ea3dd15c6bf4b4946f626734f4d6e45375a48b

Changed in magnetodb:
status: New → Fix Committed
Changed in magnetodb:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.