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

Outputting a query result in CSV format causes the "Loading results..." to show as part of results #1340

Closed
cbruno10 opened this issue Jan 21, 2022 · 0 comments
Assignees
Labels
bug Something isn't working

Comments

@cbruno10
Copy link
Contributor

cbruno10 commented Jan 21, 2022

Describe the bug
When running Steampipe interactively or non-interactively with a CSV format in ZSH, I'm seeing Loading results... in my results. It only appears to be happening with results that have a lot of rows and/or columns, I'm not sure exactly what causes it for some queries vs. others though.

In interactive mode, sometimes I see multiple Loading results... entries as well.

This does not appear to be an issue with table or JSON format.

Steampipe version (steampipe -v)
v0.12.0

To reproduce
Run steampipe query "select * from aws_iam_role" --output csv in non-interactive mode, or select * from aws_iam_role with .output csv set beforehand in interactive mode, in an AWS account that has at least 10-15 IAM roles.

Expected behavior
Loading results... should not be part of the output

Additional context

Non-interactive mode tests

Sample output where Loading results... is visible from non-interactive query (toward the end, it looks like there's a ll> out of place as well, I think a row was cut off):

cbruno@M1P cli % steampipe query "select name, description from aws_iam_role order by name limit 80" --output csv
⠹ Loading results... name,description
AWSServiceRoleForAPIGateway,The Service Linked Role is used by Amazon API Gateway.
AWSServiceRoleForAccessAnalyzer,<null>
AWSServiceRoleForAmazonEKS,Allows Amazon EKS to call AWS services on your behalf.
AWSServiceRoleForAmazonElasticFileSystem,<null>
AWSServiceRoleForAmazonFSx,Allows Amazon FSx to call AWS Services on your behalf
AWSServiceRoleForAmazonGuardDuty,A service-linked role required for Amazon GuardDuty to access your resources.
AWSServiceRoleForAmazonInspector,<null>
AWSServiceRoleForAmazonMacie,<null>
AWSServiceRoleForAmazonSSM,Provides access to AWS Resources managed or used by Amazon SSM.
AWSServiceRoleForApplicationAutoScaling_DynamoDBTable,<null>
AWSServiceRoleForAutoScaling,Default Service-Linked Role enables access to AWS Services and Resources used or managed by Auto Scaling
AWSServiceRoleForBackup,<null>
AWSServiceRoleForComputeOptimizer,Allows ComputeOptimizer to call AWS services and collect workload details on your behalf.
AWSServiceRoleForConfig,<null>
AWSServiceRoleForConfigConforms,Service Linked Role for AWS Config Conformance Packs Service
AWSServiceRoleForDAX,This policy allows DAX to manage AWS resources on your behalf as necessary for managing your cache.
AWSServiceRoleForECS,Role to enable Amazon ECS to manage your cluster.
AWSServiceRoleForEMRCleanup,<null>
AWSServiceRoleForElastiCache,This policy allows ElastiCache to manage AWS resources on your behalf as necessary for managing your cache.
AWSServiceRoleForElasticBeanstalk,<null>
AWSServiceRoleForElasticLoadBalancing,Allows ELB to call AWS services on your behalf.
AWSServiceRoleForGlobalAccelerator,Allows Global Accelerator to call AWS services on customer's behalf
AWSServiceRoleForOrganizations,Service-linked role used by AWS Organizations to enable integration of other AWS services with Organizations.
AWSServiceRoleForRDS,Allows Amazon RDS to manage AWS resources on your behalf
AWSServiceRoleForRedshift,Allows Amazon Redshift to call AWS services on your behalf
AWSServiceRoleForSSO,"Service-linked role used by AWS SSO to manage AWS resources, including IAM roles, policies and SAML IdP on your behalf."
AWSServiceRoleForSecurityHub,A service-linked role required for AWS Security Hub to access your resources.
AWSServiceRoleForServiceQuotas,A service-linked role is required for Service Quotas to access your service limits.
AWSServiceRoleForSupport,"Enables resource access for AWS to provide billing, administrative and support services"
AWSServiceRoleForTrustedAdvisor,"Access for the AWS Trusted Advisor Service to help reduce cost, increase performance, and improve security of your AWS environment."
AWSServiceRoleForVPCS2SVPN,<null>
AWSServiceRoleForVPCTransitGateway,<null>
AWSServiceRoleForWAFV2Logging,<null>
AmazonComprehendServiceRoleS3FullAccess-test,Amazon Comprehend service role for topic modeling.
AmazonSSMRoleForAutomationAssumeQuickSetup,IAM role for SSM for Quick-Setup to run automation
AmazonSSMRoleForInstancesQuickSetup,EC2 role for SSM for Quick-Setup
CFNRegistry,
CloudTrailRole-CodyTest,<null>
admin,<null>
amplify-login-lambda-15993335,<null>
cody-demo-os,
cody_ssm_notification,Allows EC2 instances to call AWS services on your behalf.
iam_metadata,<null>
iam_operator,<null>
iam_owner,<null>
metadata,<null>
my_test_zzz-role-xa4rspqm,<null>
operator,<null>
osquery-events-role-8losfojz,<null>
owner,<null>
progrock1,Allows EC2 instances to call AWS services on your behalf.ggggg
readonly,<null>
s3_admin,<null>
s3_metadata,<null>
s3_operator,<null>
s3_readonly,<null>
superuser,<null>
turbot-integration,<null>
turbot-service-superuser,<null>
turbot-superuser,<null>
turbot_config,<null>
turbot_default_ec2_instance_role,<null>
turbot_ssm_command_notifications_role,<null>
turbot_ssm_notifications_role,<null>
turbot_vpc_flow_logging,<null>
turbottest18160,Test Role
turbottest3638_1,<null>
turbottest3638_2,<null>
turbottest46831,<null>
turbottest61324,<null>
turbottest84677,Test Role
turbottest99946,Test Role
us-east-1_SWSjROEjJ-authRole,<null>
us-east-1_SWSjROEjJ_Full-access,<null>
ll>
user,<null>
workspaces_DefaultRole,<null>

Interactive mode tests

It may be related to a character limit, or number of rows, since in my testing, setting a limit to 74 rows didn't produce the text:

> select name, description from aws_iam_role order by name limit 74
name,description
AWSServiceRoleForAPIGateway,The Service Linked Role is used by Amazon API Gateway.
AWSServiceRoleForAccessAnalyzer,<null>
AWSServiceRoleForAmazonEKS,Allows Amazon EKS to call AWS services on your behalf.
AWSServiceRoleForAmazonElasticFileSystem,<null>
AWSServiceRoleForAmazonFSx,Allows Amazon FSx to call AWS Services on your behalf
AWSServiceRoleForAmazonGuardDuty,A service-linked role required for Amazon GuardDuty to access your resources.
AWSServiceRoleForAmazonInspector,<null>
AWSServiceRoleForAmazonMacie,<null>
AWSServiceRoleForAmazonSSM,Provides access to AWS Resources managed or used by Amazon SSM.
AWSServiceRoleForApplicationAutoScaling_DynamoDBTable,<null>
AWSServiceRoleForAutoScaling,Default Service-Linked Role enables access to AWS Services and Resources used or managed by Auto Scaling
AWSServiceRoleForBackup,<null>
AWSServiceRoleForComputeOptimizer,Allows ComputeOptimizer to call AWS services and collect workload details on your behalf.
AWSServiceRoleForConfig,<null>
AWSServiceRoleForConfigConforms,Service Linked Role for AWS Config Conformance Packs Service
AWSServiceRoleForDAX,This policy allows DAX to manage AWS resources on your behalf as necessary for managing your cache.
AWSServiceRoleForECS,Role to enable Amazon ECS to manage your cluster.
AWSServiceRoleForEMRCleanup,<null>
AWSServiceRoleForElastiCache,This policy allows ElastiCache to manage AWS resources on your behalf as necessary for managing your cache.
AWSServiceRoleForElasticBeanstalk,<null>
AWSServiceRoleForElasticLoadBalancing,Allows ELB to call AWS services on your behalf.
AWSServiceRoleForGlobalAccelerator,Allows Global Accelerator to call AWS services on customer's behalf
AWSServiceRoleForOrganizations,Service-linked role used by AWS Organizations to enable integration of other AWS services with Organizations.
AWSServiceRoleForRDS,Allows Amazon RDS to manage AWS resources on your behalf
AWSServiceRoleForRedshift,Allows Amazon Redshift to call AWS services on your behalf
AWSServiceRoleForSSO,"Service-linked role used by AWS SSO to manage AWS resources, including IAM roles, policies and SAML IdP on your behalf."
AWSServiceRoleForSecurityHub,A service-linked role required for AWS Security Hub to access your resources.
AWSServiceRoleForServiceQuotas,A service-linked role is required for Service Quotas to access your service limits.
AWSServiceRoleForSupport,"Enables resource access for AWS to provide billing, administrative and support services"
AWSServiceRoleForTrustedAdvisor,"Access for the AWS Trusted Advisor Service to help reduce cost, increase performance, and improve security of your AWS environment."
AWSServiceRoleForVPCS2SVPN,<null>
AWSServiceRoleForVPCTransitGateway,<null>
AWSServiceRoleForWAFV2Logging,<null>
AmazonComprehendServiceRoleS3FullAccess-test,Amazon Comprehend service role for topic modeling.
AmazonSSMRoleForAutomationAssumeQuickSetup,IAM role for SSM for Quick-Setup to run automation
AmazonSSMRoleForInstancesQuickSetup,EC2 role for SSM for Quick-Setup
CFNRegistry,
CloudTrailRole-CodyTest,<null>
admin,<null>
amplify-login-lambda-15993335,<null>
cody-demo-os,
cody_ssm_notification,Allows EC2 instances to call AWS services on your behalf.
iam_metadata,<null>
iam_operator,<null>
iam_owner,<null>
metadata,<null>
my_test_zzz-role-xa4rspqm,<null>
operator,<null>
osquery-events-role-8losfojz,<null>
owner,<null>
progrock1,Allows EC2 instances to call AWS services on your behalf.ggggg
readonly,<null>
s3_admin,<null>
s3_metadata,<null>
s3_operator,<null>
s3_readonly,<null>
superuser,<null>
turbot-integration,<null>
turbot-service-superuser,<null>
turbot-superuser,<null>
turbot_config,<null>
turbot_default_ec2_instance_role,<null>
turbot_ssm_command_notifications_role,<null>
turbot_ssm_notifications_role,<null>
turbot_vpc_flow_logging,<null>
turbottest18160,Test Role
turbottest3638_1,<null>
turbottest3638_2,<null>
turbottest46831,<null>
turbottest61324,<null>
turbottest84677,Test Role
turbottest99946,Test Role
us-east-1_SWSjROEjJ-authRole,<null>
us-east-1_SWSjROEjJ_Full-access,<null>

But setting it to 75 rows did (this also has an out of place ll> toward the end, I think a row was cut off):

> select name, description from aws_iam_role order by name limit 75
⠋ Loading results... name,description
AWSServiceRoleForAPIGateway,The Service Linked Role is used by Amazon API Gateway.
AWSServiceRoleForAccessAnalyzer,<null>
AWSServiceRoleForAmazonEKS,Allows Amazon EKS to call AWS services on your behalf.
AWSServiceRoleForAmazonElasticFileSystem,<null>
AWSServiceRoleForAmazonFSx,Allows Amazon FSx to call AWS Services on your behalf
AWSServiceRoleForAmazonGuardDuty,A service-linked role required for Amazon GuardDuty to access your resources.
AWSServiceRoleForAmazonInspector,<null>
AWSServiceRoleForAmazonMacie,<null>
AWSServiceRoleForAmazonSSM,Provides access to AWS Resources managed or used by Amazon SSM.
AWSServiceRoleForApplicationAutoScaling_DynamoDBTable,<null>
AWSServiceRoleForAutoScaling,Default Service-Linked Role enables access to AWS Services and Resources used or managed by Auto Scaling
AWSServiceRoleForBackup,<null>
AWSServiceRoleForComputeOptimizer,Allows ComputeOptimizer to call AWS services and collect workload details on your behalf.
AWSServiceRoleForConfig,<null>
AWSServiceRoleForConfigConforms,Service Linked Role for AWS Config Conformance Packs Service
AWSServiceRoleForDAX,This policy allows DAX to manage AWS resources on your behalf as necessary for managing your cache.
AWSServiceRoleForECS,Role to enable Amazon ECS to manage your cluster.
AWSServiceRoleForEMRCleanup,<null>
AWSServiceRoleForElastiCache,This policy allows ElastiCache to manage AWS resources on your behalf as necessary for managing your cache.
AWSServiceRoleForElasticBeanstalk,<null>
AWSServiceRoleForElasticLoadBalancing,Allows ELB to call AWS services on your behalf.
AWSServiceRoleForGlobalAccelerator,Allows Global Accelerator to call AWS services on customer's behalf
AWSServiceRoleForOrganizations,Service-linked role used by AWS Organizations to enable integration of other AWS services with Organizations.
AWSServiceRoleForRDS,Allows Amazon RDS to manage AWS resources on your behalf
AWSServiceRoleForRedshift,Allows Amazon Redshift to call AWS services on your behalf
AWSServiceRoleForSSO,"Service-linked role used by AWS SSO to manage AWS resources, including IAM roles, policies and SAML IdP on your behalf."
AWSServiceRoleForSecurityHub,A service-linked role required for AWS Security Hub to access your resources.
AWSServiceRoleForServiceQuotas,A service-linked role is required for Service Quotas to access your service limits.
AWSServiceRoleForSupport,"Enables resource access for AWS to provide billing, administrative and support services"
AWSServiceRoleForTrustedAdvisor,"Access for the AWS Trusted Advisor Service to help reduce cost, increase performance, and improve security of your AWS environment."
AWSServiceRoleForVPCS2SVPN,<null>
AWSServiceRoleForVPCTransitGateway,<null>
AWSServiceRoleForWAFV2Logging,<null>
AmazonComprehendServiceRoleS3FullAccess-test,Amazon Comprehend service role for topic modeling.
AmazonSSMRoleForAutomationAssumeQuickSetup,IAM role for SSM for Quick-Setup to run automation
AmazonSSMRoleForInstancesQuickSetup,EC2 role for SSM for Quick-Setup
CFNRegistry,
CloudTrailRole-CodyTest,<null>
admin,<null>
amplify-login-lambda-15993335,<null>
cody-demo-os,
cody_ssm_notification,Allows EC2 instances to call AWS services on your behalf.
iam_metadata,<null>
iam_operator,<null>
iam_owner,<null>
metadata,<null>
my_test_zzz-role-xa4rspqm,<null>
operator,<null>
osquery-events-role-8losfojz,<null>
owner,<null>
progrock1,Allows EC2 instances to call AWS services on your behalf.ggggg
readonly,<null>
s3_admin,<null>
s3_metadata,<null>
s3_operator,<null>
s3_readonly,<null>
superuser,<null>
turbot-integration,<null>
turbot-service-superuser,<null>
turbot-superuser,<null>
turbot_config,<null>
turbot_default_ec2_instance_role,<null>
turbot_ssm_command_notifications_role,<null>
turbot_ssm_notifications_role,<null>
turbot_vpc_flow_logging,<null>
turbottest18160,Test Role
turbottest3638_1,<null>
turbottest3638_2,<null>
turbottest46831,<null>
turbottest61324,<null>
turbottest84677,Test Role
turbottest99946,Test Role
us-east-1_SWSjROEjJ-authRole,<null>
us-east-1_SWSjROEjJ_Full-access,<null>
ll>
@cbruno10 cbruno10 added the bug Something isn't working label Jan 21, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants