dynamo icon indicating copy to clipboard operation
dynamo copied to clipboard

Create table incompatible with dynamodbav

Open srinidhis94 opened this issue 5 years ago • 1 comments

`

type UserDetails struct {
	UserHash           string             `dynamodbav:"uid,hash"`
	CreationTime       time.Time          `dynamodbav:"creation_time`
	IP                 string             `dynamodbav:"ip" index:"User-IP-Index,hash"`
	UA                 string             `dynamodbav:"ua" index:"User-UA-Index,hash"`
	DerivedInformation string `dynamodbav:"derived_info"`
	UserInformation    string    `dynamodbav:"user_info"`
}
db := dynamo.New(session.New(), &aws.Config{Region: aws.String(config.GetDynamoDBRegion())})
err := db.CreateTable("user_details", dynamo.AWSEncoding(userDetails)).Run()

Stacktrace :

panic: runtime error: index out of range [recovered] panic: runtime error: index out of range

goroutine 5 [running]: testing.tRunner.func1(0xc0000ca300) /usr/local/go/src/testing/testing.go:792 +0x392 panic(0xc4d4a0, 0x146ae40) /usr/local/go/src/runtime/panic.go:513 +0x1e6 github.com/amagimedia/sarvajna/vendor/github.com/guregu/dynamo.sortKeySchemas(0x1499c30, 0x0, 0x0) /home/srinidhi/Amagi/workspace/go/src/github.com/amagimedia/sarvajna/vendor/github.com/guregu/dynamo/createtable.go:467 +0x232 github.com/amagimedia/sarvajna/vendor/github.com/guregu/dynamo.(*CreateTable).input(0xc0001f5130, 0x0) /home/srinidhi/Amagi/workspace/go/src/github.com/amagimedia/sarvajna/vendor/github.com/guregu/dynamo/createtable.go:308 +0x67 github.com/amagimedia/sarvajna/vendor/github.com/guregu/dynamo.(*CreateTable).RunWithContext(0xc0001f5130, 0xfba800, 0xc0000889c0, 0x0, 0x0) /home/srinidhi/Amagi/workspace/go/src/github.com/amagimedia/sarvajna/vendor/github.com/guregu/dynamo/createtable.go:231 +0x85 github.com/amagimedia/sarvajna/vendor/github.com/guregu/dynamo.(*CreateTable).Run(0xc0001f5130, 0x0, 0x0) /home/srinidhi/Amagi/workspace/go/src/github.com/amagimedia/sarvajna/vendor/github.com/guregu/dynamo/createtable.go:223 +0xbb github.com/amagimedia/sarvajna/db/dynamodb.TestGetDynamoClient(0xc0000ca300)

`

srinidhis94 avatar Jan 16 '20 07:01 srinidhis94

I'll look into this but the easiest solution is to just add the dynamo tags to the table (you can have both dynamodbav and dynamo tags on the same field)

guregu avatar Feb 04 '20 22:02 guregu