Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

InvalidParameter: minimum field value of 1 #1692

Closed
Typraeurion opened this issue Feb 13, 2020 · 4 comments
Closed

InvalidParameter: minimum field value of 1 #1692

Typraeurion opened this issue Feb 13, 2020 · 4 comments
Labels
stale A stale issue or PR that will automatically be closed.

Comments

@Typraeurion
Copy link

Describe the bug
I’m trying to switch my DynamoDB tables from on-demand to provisioned I/O. At first I wanted to enable auto-scaling, but besides the fact that the documentation does not give any example of the expected URL format for `applicationautoscaling' (nor s3 nor dynamodb; I had to suss those out from examples of other users’ configs), I read in issue #1267 that autoscaling is not supported. :( So I just settled for using static provisioned units for now.

To Reproduce
This is what I have configured in local-config.yaml (partial settings):

schema_config:
  configs:
  - from: 2020-01-23
    store: aws-dynamo
    object_store: s3
    schema: v10

storage_config:
  aws:
    s3: s3://us-east-2/my-logs
    dynamodbconfig:
      dynamodb: dynamodb://us-east-2

table_manager:
  index_tables_provisioning:
    inactive_throughput_on_demand_mode: false
    inactive_read_throughput: 5
    inactive_write_throughput: 1
    provisioned_throughput_on_demand_mode: false
    provisioned_read_throughput: 5
    provisioned_write_throughput: 5

When I check the container logs, I see:

level=error ts=2020-02-13T18:28:04.242013805Z caller=table_manager.go:176 msg="error syncing tables" err="InvalidParameter: 2 validation error(s) found.\n- minimum field value of 1, CreateTableInput.ProvisionedThroughput.ReadCapacityUnits.\n- minimum field value of 1, CreateTableInput.ProvisionedThroughput.WriteCapacityUnits.\n"

which I don’t understand, because I set both the read and write throughput to 5 which is greater than 1. When I checked my tables in DynamoDB, all of them are still in On-demand mode.

Expected behavior
No errors from Loki. New tables are created in Provisioned mode; ideally, all existing tables are changed to Provisioned.

Environment:
I’m running loki in an AWS Elastic Kubernetes Service (EKS) cluster from the stock Docker container grafana/loki:v1.3.0.

Screenshots, Promtail config, or terminal output

level=info ts=2020-02-13T18:28:03.737723643Z caller=loki.go:149 msg=initialising module=server
level=info ts=2020-02-13T18:28:03.738107953Z caller=server.go:121 http=[::]:3100 grpc=[::]:9095 msg="server listening on addresses"
level=info ts=2020-02-13T18:28:03.738331699Z caller=loki.go:149 msg=initialising module=overrides
level=info ts=2020-02-13T18:28:03.738360073Z caller=override.go:53 msg="per-tenant overrides disabled"
level=info ts=2020-02-13T18:28:03.738430844Z caller=loki.go:149 msg=initialising module=table-manager
level=info ts=2020-02-13T18:28:03.738747524Z caller=loki.go:149 msg=initialising module=store
level=info ts=2020-02-13T18:28:03.738928555Z caller=loki.go:149 msg=initialising module=ring
level=info ts=2020-02-13T18:28:03.73905228Z caller=loki.go:149 msg=initialising module=querier
level=info ts=2020-02-13T18:28:03.739182191Z caller=worker.go:72 msg="no address specified, not starting worker"
level=info ts=2020-02-13T18:28:03.739580197Z caller=loki.go:149 msg=initialising module=ingester
level=info ts=2020-02-13T18:28:03.740470407Z caller=loki.go:149 msg=initialising module=distributor
level=info ts=2020-02-13T18:28:03.740612783Z caller=loki.go:149 msg=initialising module=all
level=info ts=2020-02-13T18:28:03.740643755Z caller=main.go:70 msg="Starting Loki" version="(version=v1.3.0, branch=HEAD, revision=5e527a03)"
level=info ts=2020-02-13T18:28:03.740977203Z caller=lifecycler.go:471 msg="not loading tokens from file, tokens file path is empty"
level=info ts=2020-02-13T18:28:03.741100427Z caller=lifecycler.go:495 msg="instance not found in ring, adding with no tokens" ring=ingester
level=info ts=2020-02-13T18:28:03.739055745Z caller=table_manager.go:220 msg="synching tables" expected_tables=8
level=info ts=2020-02-13T18:28:03.742138578Z caller=lifecycler.go:363 msg="auto-joining cluster after timeout" ring=ingester
level=info ts=2020-02-13T18:28:03.838397578Z caller=table_manager.go:363 msg="creating table" table=acceptance/2613
level=error ts=2020-02-13T18:28:04.242013805Z caller=table_manager.go:176 msg="error syncing tables" err="InvalidParameter: 2 validation error(s) found.\n- minimum field value of 1, CreateTableInput.ProvisionedThroughput.ReadCapacityUnits.\n- minimum field value of 1, CreateTableInput.ProvisionedThroughput.WriteCapacityUnits.\n"
level=info ts=2020-02-13T18:30:03.739051876Z caller=table_manager.go:220 msg="synching tables" expected_tables=8
level=info ts=2020-02-13T18:30:03.768475586Z caller=table_manager.go:363 msg="creating table" table=acceptance/2612
level=error ts=2020-02-13T18:30:04.239406295Z caller=table_manager.go:188 msg="error syncing tables" err="InvalidParameter: 2 validation error(s) found.\n- minimum field value of 1, CreateTableInput.ProvisionedThroughput.ReadCapacityUnits.\n- minimum field value of 1, CreateTableInput.ProvisionedThroughput.WriteCapacityUnits.\n"
level=info ts=2020-02-13T18:32:03.739047388Z caller=table_manager.go:220 msg="synching tables" expected_tables=8
level=info ts=2020-02-13T18:32:03.899940037Z caller=table_manager.go:363 msg="creating table" table=acceptance/2614
level=error ts=2020-02-13T18:32:04.239413855Z caller=table_manager.go:188 msg="error syncing tables" err="InvalidParameter: 2 validation error(s) found.\n- minimum field value of 1, CreateTableInput.ProvisionedThroughput.ReadCapacityUnits.\n- minimum field value of 1, CreateTableInput.ProvisionedThroughput.WriteCapacityUnits.\n"

[messages repeat every 2 minutes]

@stale
Copy link

stale bot commented Mar 14, 2020

This issue has been automatically marked as stale because it has not had any activity in the past 30 days. It will be closed in 7 days if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale A stale issue or PR that will automatically be closed. label Mar 14, 2020
@stale stale bot closed this as completed Mar 21, 2020
@rosscdh
Copy link

rosscdh commented Aug 11, 2021

+1 imrsa enabled can access the bucket via cli but not via configured settings

@trottomv
Copy link

trottomv commented Nov 1, 2021

+1

@rosscdh
Copy link

rosscdh commented Nov 2, 2021

switched to use the boltdb shipper works as expected

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
stale A stale issue or PR that will automatically be closed.
Projects
None yet
Development

No branches or pull requests

3 participants