You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lens.apache.org by Rajat Khandelwal <ra...@gmail.com> on 2016/02/02 14:34:45 UTC
Re: Review Request 41035: LENS-791: CLI format json strips away all
commas, including useful ones
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/41035/
-----------------------------------------------------------
(Updated Feb. 2, 2016, 7:04 p.m.)
Review request for lens.
Bugs: LENS-791
https://issues.apache.org/jira/browse/LENS-791
Repository: lens
Description
-------
fixing cli formatting
Diffs (updated)
-----
lens-api/pom.xml 1704b6264d40ed02cd566da52e6b5f27b9165a85
lens-api/src/main/java/org/apache/lens/api/APIResult.java f50d3ea153948cf7b64d4bda0bee9c490908c45a
lens-api/src/main/java/org/apache/lens/api/DateTime.java 3f89fdd17c7c1100a8b4e3f73c711ef67ad87e9f
lens-api/src/main/java/org/apache/lens/api/LensConf.java 67d6461e5039f1394b15428904c47fc8732ef4fd
lens-api/src/main/java/org/apache/lens/api/LensSessionHandle.java dc9142d37559546adce8e92631987d5f7042ab39
lens-api/src/main/java/org/apache/lens/api/ToXMLString.java PRE-CREATION
lens-api/src/main/java/org/apache/lens/api/ToYAMLString.java PRE-CREATION
lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 85a47ec5df069d7f7a0255c86570dd9a87c5b50f
lens-api/src/main/java/org/apache/lens/api/jaxb/YAMLToStringStrategy.java PRE-CREATION
lens-api/src/main/java/org/apache/lens/api/query/LensPreparedQuery.java f5bc35d38518b89894a385397c0bb6b39af0a474
lens-api/src/main/java/org/apache/lens/api/query/LensQuery.java 23c4decfe48fdfdb733beb100ad729468237c93c
lens-api/src/main/java/org/apache/lens/api/query/QueryStatus.java 915dac7ce3fc9e5f06eb802d8a3c88cc4237deea
lens-api/src/main/java/org/apache/lens/api/query/QuerySubmitResult.java f3fb6db20e71caefe9884a8a89e58bdefab9c0be
lens-api/src/test/java/org/apache/lens/api/jaxb/YAMLToStringStrategyTest.java PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.DateTime.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.DateTime.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.LensConf.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.LensConf.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.LensPreparedQuery.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.LensPreparedQuery.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.LensQuery.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.LensQuery.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandle.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandle.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandleWithResultSet.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandleWithResultSet.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPlan.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPlan.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPrepareHandle.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPrepareHandle.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryStatus.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryStatus.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.result.QueryCostTO.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.result.QueryCostTO.yaml PRE-CREATION
lens-cli/src/main/java/org/apache/lens/cli/commands/BaseLensCommand.java 66a6c4d4abfcb8d3a030e637232d81f4918bdb3f
lens-cli/src/main/java/org/apache/lens/cli/commands/LensCRUDCommand.java a0c05b41650cd8303879c6c370d892c544adf6ca
lens-cli/src/main/java/org/apache/lens/cli/commands/LensConnectionCommands.java 0aa51a8eeea2ad3e0b43d7f011c50b83b0ba30e4
lens-cli/src/main/java/org/apache/lens/cli/commands/LensDimensionCommands.java dc8349e322adcb031ef503850e012603f5865088
lens-cli/src/main/java/org/apache/lens/cli/commands/LensQueryCommands.java e2ac3afdd7c4000622c8b83546d99ecc1dd25ec4
lens-cli/src/main/java/org/apache/lens/cli/commands/LogicalTableCrudCommand.java a04d5c836a31b625e0efcd5509d999d6e483cbb6
lens-client/src/main/java/org/apache/lens/client/LensClient.java f7f99c7c20b97e9f2b53c39ee147d5cc682f93dc
lens-client/src/main/java/org/apache/lens/client/LensMetadataClient.java 07ce41ea720e92c6ae553d11026410840da5334a
lens-client/src/main/resources/lens-client-default.xml 1b7c9781e2c4221f9831eaefd6c0efa435c0a91e
lens-examples/pom.xml 0a5a744d1e376c22914c6fe73e80f9c069ed5ee6
lens-examples/src/main/java/org/apache/lens/examples/SampleMetastore.java b6385d47a7bde764698d7e79ca7f5d85e9c35cc5
lens-examples/src/main/resources/example-job.xml 93f36d4da711315d3bd6b7af230146fcd74ec237
lens-examples/src/test/java/org/apache/lens/examples/ExampleSchemaToStringTest.java PRE-CREATION
lens-examples/src/test/resources/yaml/city-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/city.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/city_subset.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/city_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/customer-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/customer.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/customer_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/db-storage.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim1-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim2-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim4-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim_table2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim_table3.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim_table4.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/example-job.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact1-local-part1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact1-local-part2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact1-local-part3.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact2-local-part1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact2-local-part2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact2-local-part3.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/local-cluster-storage.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/local-storage.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/product-local-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/product.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/product_db_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/product_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part3.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part4.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part5.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part6.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/rawfact.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-continuous-fact.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact1-local-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact1-mydb-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact2-local-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact2-mydb-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-cube.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-raw-fact.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-raw-local-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sample-cube.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sample-db-only-dimension.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sample-dimension.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sample-dimension2.yaml PRE-CREATION
pom.xml 349b71c9699575de853865461475e074168e411b
src/site/apt/user/client-config.apt 3d990a9a0e238fbf8924afd92a872bfd70765cd9
Diff: https://reviews.apache.org/r/41035/diff/
Testing
-------
```
Welcome to Lens Client
lens-shell>describe cube sales
properties:
cube.col.production_city_name.description: City name in which the product was produced
cube.measure.rating.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.customer_city_name.type: string
cube.col.profit.displaystring: Profit
cube.dimension.production_city_id.type: int
cube.dimension.customer_city_name.class: org.apache.lens.cube.metadata.ReferencedDimAtrribute
cube.dimension.production_city_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.measure.line_item_quantity.aggregate: SUM
cube.col.promotion_sales.cost: 0.0
cube.dimension.delivery_city_id.type: int
cube.timedim.partition.delivery_time: dt
cube.sales.joinchains.list0: customer_details,product_details,customer_city,delivery_city,production_city
base.sales.expressions.list.size: 1
cube.dimension.order_id.type: int
cube.measure.max_line_item_price.aggregate: MAX
transient_lastDdlTime: 1450698320
cube.measure.line_item_product_price.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.col.profit.type: double
cube.col.promotion_sales.expr: c3VtKGNhc2Ugd2hlbiBwcm9tb3Rpb25faWQgPSAwIHRoZW4gMCBlbHNlIHN0b3JlX3NhbGVzIGVu
ZCk=
:2015-04-11-18:|c3VtKGNhc2Ugd2hlbiBwcm9tb3Rpb25faWQgPSAtMSB0aGVuIDAgd2hlbiBwcm9tb3Rpb25faWQg
PSAtMSB0aGVuIDAgZWxzZSBzdG9yZV9zYWxlcyBlbmQp
::2015-04-11-18
cube.measure.line_item_tax.aggregate: SUM
cube.measure.line_item_tax.type: float
cube.col.delivery_city_name.description: City name to which the product was delivered
cube.measure.unit_sales.type: bigint
cube.measure.store_sales.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.measure.line_item_quantity.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.customer_city_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.production_city_name.chain.name: production_city
cube.dimension.delivery_city_name.class: org.apache.lens.cube.metadata.ReferencedDimAtrribute
cube.dimension.delivery_city_name.chain.name: delivery_city
cube.col.max_line_item_discount.displaystring: Maximum Line item discount
base.sales.expressions.list0: profit,promotion_sales
cube.dimension.production_country.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.customer_city_name.description: City name to which the customer belongs
cube.sales.timed.dimensions.list: order_time,delivery_time
cube.measure.line_item_product_price.type: float
cube.col.line_item_product_price.displaystring: Line item product price
cube.joinchain.customer_city.fullchain.1: sales.customer_id.false,customer.id.false,customer.city_id.false,city.id.false
cube.col.line_item_discount_amount.displaystring: Line item discount
cube.joinchain.customer_city.fullchain.0: sales.customer_city_id.false,city.id.false
cube.joinchain.customer_city.numchains: 2
cube.dimension.customer_city_id.type: int
cube.col.profit.expr.base64: true
cube.dimension.production_country.type: string
cube.dimension.customer_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.customer_id.type: int
cube.measure.max_line_item_price.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.delivery_city_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.store_cost.displaystring: Store Cost
cube.joinchain.customer_details.numchains: 1
cube.timedim.relation.order_time: delivery_time+[-20 days,-1 hour]
cube.table.sales.weight: 0.0
cube.dimension.product_id.type: int
cube.measure.line_item_quantity.type: int
cube.col.max_line_item_price.displaystring: Maximum Line item price
cube.dimension.customer_city_name.chain.column.name: name
cube.joinchain.delivery_city.numchains: 1
cube.col.customer_city_name.displaystring: Customer City
cube.measure.max_line_item_discount.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.order_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.customer_city_name.chain.name: customer_city
cube.sales.dimensions.list.size: 1
cube.joinchain.product_details.fullchain.0: sales.product_id.false,product.id.false
cube.dimension.production_state.type: string
cube.measure.max_line_item_price.type: float
cube.col.store_sales.displaystring: Store Sales
cube.col.delivery_city_name.displaystring: Delivery City
cube.table.type: CUBE
cube.col.promotion_sales.expr.base64: true
cube.col.store_cost.starttime: 2015-02-28-18
cube.dimension.production_state.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.unit_sales.displaystring: Unit Sales
cube.sales.measures.list0: unit_sales,store_sales,store_cost,line_item_quantity,line_item_product_price,line_item_discount_amount,line_item_tax,max_line_item_price,max_line_item_discount,rating
cube.col.production_state.displaystring: Production State
cube.dimension.order_time.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.measure.unit_sales.format: #,###
cube.col.line_item_tax.displaystring: Line item tax
cube.measure.max_line_item_discount.type: float
cube.dimension.product_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.measure.line_item_product_price.aggregate: SUM
cube.dimension.production_city_name.class: org.apache.lens.cube.metadata.ReferencedDimAtrribute
cube.col.production_country.description: Country name in which the product was produced
cube.col.production_city_name.displaystring: Production City
cube.measure.store_sales.format: #,###.##
cube.col.profit.expr: c3RvcmVfc2FsZXMgLSBzdG9yZV9jb3N0
::
cube.dimension.delivery_time.type: timestamp
cube.measure.rating.type: float
cube.measure.line_item_tax.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.measure.unit_sales.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.sales.joinchains.list.size: 1
cube.joinchain.customer_details.fullchain.0: sales.customer_id.false,customer.id.false
cube.col.customer_city_id.starttime: 2015-02-28-18
cube.joinchain.production_city.numchains: 1
cube.sales.dimensions.list0: customer_id,product_id,promotion_id,order_id,order_line_number,order_time,delivery_time,customer_city_id,production_city_id,delivery_city_id,customer_city_name,production_location,delivery_city_name
cube.measure.store_cost.type: double
cube.dimension.production_city_name.chain.column.name: name
cube.measure.store_sales.aggregate: SUM
cube.joinchain.product_details.numchains: 1
cube.measure.rating.aggregate: AVG
cube.dimension.order_line_number.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.promotion_sales.type: double
cube.dimension.order_line_number.type: int
cube.dimension.production_location.hierarchy.2: production_country,org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.delivery_city_name.type: string
cube.dimension.production_location.hierarchy.1: production_state,org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.production_location.hierarchy.0: production_city_name,org.apache.lens.cube.metadata.ReferencedDimAtrribute
cube.dimension.delivery_city_name.chain.column.name: name
cube.joinchain.delivery_city.fullchain.0: sales.delivery_city_id.false,city.id.false
cube.measure.store_sales.type: double
cube.measure.line_item_discount_amount.aggregate: SUM
cube.dimension.promotion_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.production_country.displaystring: Production Country
cube.col.profit.cost: 0.0
cube.measure.line_item_discount_amount.type: float
cube.measure.unit_sales.aggregate: SUM
cube.sales.measures.list.size: 1
cube.dimension.production_location.class: org.apache.lens.cube.metadata.HierarchicalDimAttribute
cube.dimension.promotion_id.type: int
cube.measure.max_line_item_discount.aggregate: MAX
cube.measure.line_item_discount_amount.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.delivery_time.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.measure.store_cost.aggregate: SUM
cube.col.rating.displaystring: Rating
cube.measure.store_cost.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.col.production_state.description: State name in which the product was produced
cube.col.promotion_sales.displaystring: Promotion sales
cube.joinchain.production_city.fullchain.0: sales.production_city_id.false,city.id.false
cube.dimension.order_time.type: timestamp
cube.col.line_item_quantity.displaystring: Line item quantity
cube.timedim.partition.order_time: ot
cube.measure.store_cost.format: #,###.00
cube.dimension.production_city_name.type: string
name: sales
measures:
rating:
displayString: Rating
type: FLOAT
defaultAggr: AVG
line_item_quantity:
displayString: Line item quantity
type: INT
defaultAggr: SUM
store_sales:
displayString: Store Sales
type: DOUBLE
defaultAggr: SUM
formatString: #,###.##
unit_sales:
displayString: Unit Sales
type: BIGINT
defaultAggr: SUM
formatString: #,###
line_item_tax:
displayString: Line item tax
type: FLOAT
defaultAggr: SUM
max_line_item_discount:
displayString: Maximum Line item discount
type: FLOAT
defaultAggr: MAX
store_cost:
displayString: Store Cost
type: DOUBLE
defaultAggr: SUM
formatString: #,###.00
startTime: 2015-02-28T23:30:00.000+05:30
max_line_item_price:
displayString: Maximum Line item price
type: FLOAT
defaultAggr: MAX
line_item_discount_amount:
displayString: Line item discount
type: FLOAT
defaultAggr: SUM
line_item_product_price:
displayString: Line item product price
type: FLOAT
defaultAggr: SUM
dimAttributes:
production_location:
hierarchy:
production_city_name:
displayString: Production City
description: City name in which the product was produced
refSpec:
chainRefColumn:
-
chainName: production_city
refCol: name
destTable: city
type: string
joinKey: false
production_state:
displayString: Production State
description: State name in which the product was produced
type: string
joinKey: false
production_country:
displayString: Production Country
description: Country name in which the product was produced
type: string
joinKey: false
joinKey: false
customer_city_name:
displayString: Customer City
description: City name to which the customer belongs
refSpec:
chainRefColumn:
-
chainName: customer_city
refCol: name
destTable: city
type: string
joinKey: false
production_city_id:
type: int
joinKey: false
product_id:
type: int
joinKey: false
order_id:
type: int
joinKey: false
delivery_city_id:
type: int
joinKey: false
delivery_time:
type: timestamp
joinKey: false
order_time:
type: timestamp
joinKey: false
order_line_number:
type: int
joinKey: false
customer_city_id:
type: int
startTime: 2015-02-28T23:30:00.000+05:30
joinKey: false
promotion_id:
type: int
joinKey: false
delivery_city_name:
displayString: Delivery City
description: City name to which the product was delivered
refSpec:
chainRefColumn:
-
chainName: delivery_city
refCol: name
destTable: city
type: string
joinKey: false
customer_id:
type: int
joinKey: false
expressions:
profit:
displayString: Profit
exprSpec:
-
expr: store_sales - store_cost
type: double
promotion_sales:
displayString: Promotion sales
exprSpec:
-
expr: sum(case when promotion_id = 0 then 0 else store_sales end)
startTime: 2015-04-11T23:30:00.000+05:30
-
expr: sum(case when promotion_id = -1 then 0 when promotion_id = -1 then 0 else store_sales end)
endTime: 2015-04-11T23:30:00.000+05:30
type: double
joinChains:
product_details:
paths:
-
sales.product_id=product.id
destTable: product
production_city:
paths:
-
sales.production_city_id=city.id
destTable: city
customer_details:
paths:
-
sales.customer_id=customer.id
destTable: customer
delivery_city:
paths:
-
sales.delivery_city_id=city.id
destTable: city
customer_city:
paths:
-
sales.customer_city_id=city.id
-
sales.customer_id=customer.id
customer.city_id=city.id
destTable: city
```
```
lens-shell>query details
queryHandle: a186be92-fc1f-4509-9c8b-6ce6f1f7bdbb
userQuery: cube select measure2 from sample_cube where time_range_in(dt, '2014-06-24-23', '2014-06-25-00')
submittedUser: anonymous
priority: VERY_HIGH
isPersistent: false
selectedDriverName: hive/hive1
driverQuery: INSERT OVERWRITE DIRECTORY "file:/tmp/lensreports/hdfsout/a186be92-fc1f-4509-9c8b-6ce6f1f7bdbb" SELECT sum(( sample_cube . measure2 )) FROM local_fact1 sample_cube WHERE (((( sample_cube . dt ) = '2014-06-24-23' )))
status:
Status : SUCCESSFUL
Message : Query is successful!
Progress : 1.0
Result Available
driverOpHandle: OperationHandle [opType=EXECUTE_STATEMENT, getHandleIdentifier()=1da0e13e-eb67-484b-931f-1ca5584ac030]
submissionTime: 1452083135606
launchTime: 1452083141739
driverStartTime: 1452083139777
driverFinishTime: 1452083149324
finishTime: 1452083149336
closedTime: 0
lens-shell>
```
Thanks,
Rajat Khandelwal
Re: Review Request 41035: LENS-791: CLI format json strips away all
commas, including useful ones
Posted by Amareshwari Sriramadasu <am...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/41035/#review117986
-----------------------------------------------------------
Ship it!
Ship It!
- Amareshwari Sriramadasu
On Feb. 3, 2016, 1:58 p.m., Rajat Khandelwal wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/41035/
> -----------------------------------------------------------
>
> (Updated Feb. 3, 2016, 1:58 p.m.)
>
>
> Review request for lens.
>
>
> Bugs: LENS-791
> https://issues.apache.org/jira/browse/LENS-791
>
>
> Repository: lens
>
>
> Description
> -------
>
> fixing cli formatting
>
>
> Diffs
> -----
>
> lens-api/pom.xml e4a89ff8d769bdfe0d70cc6e673c40b53ef6465e
> lens-api/src/main/java/org/apache/lens/api/APIResult.java f50d3ea153948cf7b64d4bda0bee9c490908c45a
> lens-api/src/main/java/org/apache/lens/api/DateTime.java 3f89fdd17c7c1100a8b4e3f73c711ef67ad87e9f
> lens-api/src/main/java/org/apache/lens/api/LensConf.java 67d6461e5039f1394b15428904c47fc8732ef4fd
> lens-api/src/main/java/org/apache/lens/api/LensSessionHandle.java dc9142d37559546adce8e92631987d5f7042ab39
> lens-api/src/main/java/org/apache/lens/api/ToXMLString.java PRE-CREATION
> lens-api/src/main/java/org/apache/lens/api/ToYAMLString.java PRE-CREATION
> lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 85a47ec5df069d7f7a0255c86570dd9a87c5b50f
> lens-api/src/main/java/org/apache/lens/api/jaxb/YAMLToStringStrategy.java PRE-CREATION
> lens-api/src/main/java/org/apache/lens/api/query/InMemoryQueryResult.java 36d0ba02417b722a0d091b87ebbee7e246b26a26
> lens-api/src/main/java/org/apache/lens/api/query/LensPreparedQuery.java f5bc35d38518b89894a385397c0bb6b39af0a474
> lens-api/src/main/java/org/apache/lens/api/query/LensQuery.java 23c4decfe48fdfdb733beb100ad729468237c93c
> lens-api/src/main/java/org/apache/lens/api/query/QueryHandle.java 2d4c706b693660b960c7fde2ddfde47d7d8707c3
> lens-api/src/main/java/org/apache/lens/api/query/QueryPrepareHandle.java 38e87b17e479fd393f7b39fdc0399f6dd49c2955
> lens-api/src/main/java/org/apache/lens/api/query/QueryResult.java 3bc7cc722a9b4af4ccd214ef71e51d3ad58afc1e
> lens-api/src/main/java/org/apache/lens/api/query/QueryResultSetMetadata.java 22c61cf3bb06613bc926e9fbc869fa1a4a349507
> lens-api/src/main/java/org/apache/lens/api/query/QueryStatus.java 915dac7ce3fc9e5f06eb802d8a3c88cc4237deea
> lens-api/src/main/java/org/apache/lens/api/query/QuerySubmitResult.java f3fb6db20e71caefe9884a8a89e58bdefab9c0be
> lens-api/src/main/java/org/apache/lens/api/query/SchedulerJobInfo.java 1ae7894149c4a29be0e96fe8c2f7c0de2d14dc99
> lens-api/src/main/java/org/apache/lens/api/result/QueryCostTO.java 266a4b71d970306d34420ab98a852b5dbc5b893d
> lens-api/src/test/java/org/apache/lens/api/jaxb/YAMLToStringStrategyTest.java PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.DateTime.xml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.DateTime.yaml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.LensConf.xml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.LensConf.yaml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.InMemoryQueryResult.xml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.InMemoryQueryResult.yaml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.LensPreparedQuery.xml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.LensPreparedQuery.yaml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.LensQuery.xml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.LensQuery.yaml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.PersistentQueryResult.xml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.PersistentQueryResult.yaml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandle.xml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandle.yaml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandleWithResultSet.xml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandleWithResultSet.yaml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPlan.xml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPlan.yaml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPrepareHandle.xml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPrepareHandle.yaml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryResultSetMetadata.xml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryResultSetMetadata.yaml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryStatus.xml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryStatus.yaml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.ResultRow.xml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.ResultRow.yaml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.SchedulerJobHandle.xml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.query.SchedulerJobHandle.yaml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.result.QueryCostTO.xml PRE-CREATION
> lens-api/src/test/resources/toString/org.apache.lens.api.result.QueryCostTO.yaml PRE-CREATION
> lens-cli/src/main/java/org/apache/lens/cli/commands/BaseLensCommand.java 66a6c4d4abfcb8d3a030e637232d81f4918bdb3f
> lens-cli/src/main/java/org/apache/lens/cli/commands/LensCRUDCommand.java a0c05b41650cd8303879c6c370d892c544adf6ca
> lens-cli/src/main/java/org/apache/lens/cli/commands/LensConnectionCommands.java 0aa51a8eeea2ad3e0b43d7f011c50b83b0ba30e4
> lens-cli/src/main/java/org/apache/lens/cli/commands/LensDimensionCommands.java dc8349e322adcb031ef503850e012603f5865088
> lens-cli/src/main/java/org/apache/lens/cli/commands/LensQueryCommands.java e2ac3afdd7c4000622c8b83546d99ecc1dd25ec4
> lens-cli/src/main/java/org/apache/lens/cli/commands/LogicalTableCrudCommand.java a04d5c836a31b625e0efcd5509d999d6e483cbb6
> lens-cli/src/test/java/org/apache/lens/cli/LensCliApplicationTest.java 83123356f2fe27931687d2046fbc23bd21ad335f
> lens-cli/src/test/java/org/apache/lens/cli/TestLensCubeCommands.java 43d0722e861ec5d90628bc40daa0d7703a119575
> lens-cli/src/test/java/org/apache/lens/cli/TestLensDimensionCommands.java 160699bf6e895bf15ac10a426c6038db4dcc5959
> lens-cli/src/test/java/org/apache/lens/cli/TestLensDimensionTableCommands.java bf9204419d891ac3559c1eda64900824860b7ff1
> lens-cli/src/test/java/org/apache/lens/cli/TestLensFactCommands.java 448d0f6a8056f94283503d068963c7c7ebb8aa17
> lens-cli/src/test/java/org/apache/lens/cli/TestLensStorageCommands.java 8bccac2bf083941acc81963195e6bc8dd59aaa7b
> lens-client/src/main/java/org/apache/lens/client/LensClient.java f7f99c7c20b97e9f2b53c39ee147d5cc682f93dc
> lens-client/src/main/java/org/apache/lens/client/LensMetadataClient.java 07ce41ea720e92c6ae553d11026410840da5334a
> lens-client/src/main/java/org/apache/lens/client/LensStatement.java 00091829b82ce1afc9f516e086b2cbcc3be768bd
> lens-client/src/main/resources/lens-client-default.xml 1b7c9781e2c4221f9831eaefd6c0efa435c0a91e
> lens-examples/pom.xml c97392e67ebb621c65069287498628538de3a086
> lens-examples/src/main/java/org/apache/lens/examples/SampleMetastore.java b6385d47a7bde764698d7e79ca7f5d85e9c35cc5
> lens-examples/src/main/resources/example-job.xml 93f36d4da711315d3bd6b7af230146fcd74ec237
> lens-examples/src/test/java/org/apache/lens/examples/ExampleSchemaToStringTest.java PRE-CREATION
> lens-examples/src/test/resources/yaml/city-local-part.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/city.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/city_subset.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/city_table.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/customer-local-part.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/customer.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/customer_table.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/db-storage.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/dim1-local-part.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/dim2-local-part.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/dim4-local-part.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/dim_table.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/dim_table2.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/dim_table3.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/dim_table4.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/example-job.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/fact1-local-part1.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/fact1-local-part2.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/fact1-local-part3.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/fact1.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/fact2-local-part1.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/fact2-local-part2.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/fact2-local-part3.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/fact2.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/local-cluster-storage.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/local-storage.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/product-local-parts.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/product.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/product_db_table.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/product_table.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/raw-local-part1.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/raw-local-part2.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/raw-local-part3.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/raw-local-part4.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/raw-local-part5.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/raw-local-part6.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/rawfact.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/sales-aggr-continuous-fact.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/sales-aggr-fact1-local-parts.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/sales-aggr-fact1-mydb-parts.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/sales-aggr-fact1.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/sales-aggr-fact2-local-parts.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/sales-aggr-fact2-mydb-parts.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/sales-aggr-fact2.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/sales-cube.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/sales-raw-fact.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/sales-raw-local-parts.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/sample-cube.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/sample-db-only-dimension.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/sample-dimension.yaml PRE-CREATION
> lens-examples/src/test/resources/yaml/sample-dimension2.yaml PRE-CREATION
> lens-server/src/test/java/org/apache/lens/server/LensJerseyTest.java a00a86bbe61d764007352cc9b18b840d66dae96d
> lens-server/src/test/java/org/apache/lens/server/LensServerTestUtil.java ddca12fcb66a2852e672486c0b96c370502d0a71
> pom.xml bc81d81743884aa9d13e071ed4f2a1469e4cf6ea
> src/site/apt/user/client-config.apt 3d990a9a0e238fbf8924afd92a872bfd70765cd9
>
> Diff: https://reviews.apache.org/r/41035/diff/
>
>
> Testing
> -------
>
> ```
> Welcome to Lens Client
> lens-shell>describe cube sales
> properties:
> cube.col.production_city_name.description: City name in which the product was produced
> cube.measure.rating.class: org.apache.lens.cube.metadata.ColumnMeasure
> cube.dimension.customer_city_name.type: string
> cube.col.profit.displaystring: Profit
> cube.dimension.production_city_id.type: int
> cube.dimension.customer_city_name.class: org.apache.lens.cube.metadata.ReferencedDimAtrribute
> cube.dimension.production_city_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
> cube.measure.line_item_quantity.aggregate: SUM
> cube.col.promotion_sales.cost: 0.0
> cube.dimension.delivery_city_id.type: int
> cube.timedim.partition.delivery_time: dt
> cube.sales.joinchains.list0: customer_details,product_details,customer_city,delivery_city,production_city
> base.sales.expressions.list.size: 1
> cube.dimension.order_id.type: int
> cube.measure.max_line_item_price.aggregate: MAX
> transient_lastDdlTime: 1450698320
> cube.measure.line_item_product_price.class: org.apache.lens.cube.metadata.ColumnMeasure
> cube.col.profit.type: double
> cube.col.promotion_sales.expr: c3VtKGNhc2Ugd2hlbiBwcm9tb3Rpb25faWQgPSAwIHRoZW4gMCBlbHNlIHN0b3JlX3NhbGVzIGVu
> ZCk=
> :2015-04-11-18:|c3VtKGNhc2Ugd2hlbiBwcm9tb3Rpb25faWQgPSAtMSB0aGVuIDAgd2hlbiBwcm9tb3Rpb25faWQg
> PSAtMSB0aGVuIDAgZWxzZSBzdG9yZV9zYWxlcyBlbmQp
> ::2015-04-11-18
> cube.measure.line_item_tax.aggregate: SUM
> cube.measure.line_item_tax.type: float
> cube.col.delivery_city_name.description: City name to which the product was delivered
> cube.measure.unit_sales.type: bigint
> cube.measure.store_sales.class: org.apache.lens.cube.metadata.ColumnMeasure
> cube.measure.line_item_quantity.class: org.apache.lens.cube.metadata.ColumnMeasure
> cube.dimension.customer_city_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
> cube.dimension.production_city_name.chain.name: production_city
> cube.dimension.delivery_city_name.class: org.apache.lens.cube.metadata.ReferencedDimAtrribute
> cube.dimension.delivery_city_name.chain.name: delivery_city
> cube.col.max_line_item_discount.displaystring: Maximum Line item discount
> base.sales.expressions.list0: profit,promotion_sales
> cube.dimension.production_country.class: org.apache.lens.cube.metadata.BaseDimAttribute
> cube.col.customer_city_name.description: City name to which the customer belongs
> cube.sales.timed.dimensions.list: order_time,delivery_time
> cube.measure.line_item_product_price.type: float
> cube.col.line_item_product_price.displaystring: Line item product price
> cube.joinchain.customer_city.fullchain.1: sales.customer_id.false,customer.id.false,customer.city_id.false,city.id.false
> cube.col.line_item_discount_amount.displaystring: Line item discount
> cube.joinchain.customer_city.fullchain.0: sales.customer_city_id.false,city.id.false
> cube.joinchain.customer_city.numchains: 2
> cube.dimension.customer_city_id.type: int
> cube.col.profit.expr.base64: true
> cube.dimension.production_country.type: string
> cube.dimension.customer_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
> cube.dimension.customer_id.type: int
> cube.measure.max_line_item_price.class: org.apache.lens.cube.metadata.ColumnMeasure
> cube.dimension.delivery_city_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
> cube.col.store_cost.displaystring: Store Cost
> cube.joinchain.customer_details.numchains: 1
> cube.timedim.relation.order_time: delivery_time+[-20 days,-1 hour]
> cube.table.sales.weight: 0.0
> cube.dimension.product_id.type: int
> cube.measure.line_item_quantity.type: int
> cube.col.max_line_item_price.displaystring: Maximum Line item price
> cube.dimension.customer_city_name.chain.column.name: name
> cube.joinchain.delivery_city.numchains: 1
> cube.col.customer_city_name.displaystring: Customer City
> cube.measure.max_line_item_discount.class: org.apache.lens.cube.metadata.ColumnMeasure
> cube.dimension.order_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
> cube.dimension.customer_city_name.chain.name: customer_city
> cube.sales.dimensions.list.size: 1
> cube.joinchain.product_details.fullchain.0: sales.product_id.false,product.id.false
> cube.dimension.production_state.type: string
> cube.measure.max_line_item_price.type: float
> cube.col.store_sales.displaystring: Store Sales
> cube.col.delivery_city_name.displaystring: Delivery City
> cube.table.type: CUBE
> cube.col.promotion_sales.expr.base64: true
> cube.col.store_cost.starttime: 2015-02-28-18
> cube.dimension.production_state.class: org.apache.lens.cube.metadata.BaseDimAttribute
> cube.col.unit_sales.displaystring: Unit Sales
> cube.sales.measures.list0: unit_sales,store_sales,store_cost,line_item_quantity,line_item_product_price,line_item_discount_amount,line_item_tax,max_line_item_price,max_line_item_discount,rating
> cube.col.production_state.displaystring: Production State
> cube.dimension.order_time.class: org.apache.lens.cube.metadata.BaseDimAttribute
> cube.measure.unit_sales.format: #,###
> cube.col.line_item_tax.displaystring: Line item tax
> cube.measure.max_line_item_discount.type: float
> cube.dimension.product_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
> cube.measure.line_item_product_price.aggregate: SUM
> cube.dimension.production_city_name.class: org.apache.lens.cube.metadata.ReferencedDimAtrribute
> cube.col.production_country.description: Country name in which the product was produced
> cube.col.production_city_name.displaystring: Production City
> cube.measure.store_sales.format: #,###.##
> cube.col.profit.expr: c3RvcmVfc2FsZXMgLSBzdG9yZV9jb3N0
> ::
> cube.dimension.delivery_time.type: timestamp
> cube.measure.rating.type: float
> cube.measure.line_item_tax.class: org.apache.lens.cube.metadata.ColumnMeasure
> cube.measure.unit_sales.class: org.apache.lens.cube.metadata.ColumnMeasure
> cube.sales.joinchains.list.size: 1
> cube.joinchain.customer_details.fullchain.0: sales.customer_id.false,customer.id.false
> cube.col.customer_city_id.starttime: 2015-02-28-18
> cube.joinchain.production_city.numchains: 1
> cube.sales.dimensions.list0: customer_id,product_id,promotion_id,order_id,order_line_number,order_time,delivery_time,customer_city_id,production_city_id,delivery_city_id,customer_city_name,production_location,delivery_city_name
> cube.measure.store_cost.type: double
> cube.dimension.production_city_name.chain.column.name: name
> cube.measure.store_sales.aggregate: SUM
> cube.joinchain.product_details.numchains: 1
> cube.measure.rating.aggregate: AVG
> cube.dimension.order_line_number.class: org.apache.lens.cube.metadata.BaseDimAttribute
> cube.col.promotion_sales.type: double
> cube.dimension.order_line_number.type: int
> cube.dimension.production_location.hierarchy.2: production_country,org.apache.lens.cube.metadata.BaseDimAttribute
> cube.dimension.delivery_city_name.type: string
> cube.dimension.production_location.hierarchy.1: production_state,org.apache.lens.cube.metadata.BaseDimAttribute
> cube.dimension.production_location.hierarchy.0: production_city_name,org.apache.lens.cube.metadata.ReferencedDimAtrribute
> cube.dimension.delivery_city_name.chain.column.name: name
> cube.joinchain.delivery_city.fullchain.0: sales.delivery_city_id.false,city.id.false
> cube.measure.store_sales.type: double
> cube.measure.line_item_discount_amount.aggregate: SUM
> cube.dimension.promotion_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
> cube.col.production_country.displaystring: Production Country
> cube.col.profit.cost: 0.0
> cube.measure.line_item_discount_amount.type: float
> cube.measure.unit_sales.aggregate: SUM
> cube.sales.measures.list.size: 1
> cube.dimension.production_location.class: org.apache.lens.cube.metadata.HierarchicalDimAttribute
> cube.dimension.promotion_id.type: int
> cube.measure.max_line_item_discount.aggregate: MAX
> cube.measure.line_item_discount_amount.class: org.apache.lens.cube.metadata.ColumnMeasure
> cube.dimension.delivery_time.class: org.apache.lens.cube.metadata.BaseDimAttribute
> cube.measure.store_cost.aggregate: SUM
> cube.col.rating.displaystring: Rating
> cube.measure.store_cost.class: org.apache.lens.cube.metadata.ColumnMeasure
> cube.col.production_state.description: State name in which the product was produced
> cube.col.promotion_sales.displaystring: Promotion sales
> cube.joinchain.production_city.fullchain.0: sales.production_city_id.false,city.id.false
> cube.dimension.order_time.type: timestamp
> cube.col.line_item_quantity.displaystring: Line item quantity
> cube.timedim.partition.order_time: ot
> cube.measure.store_cost.format: #,###.00
> cube.dimension.production_city_name.type: string
> name: sales
> measures:
> rating:
> displayString: Rating
> type: FLOAT
> defaultAggr: AVG
> line_item_quantity:
> displayString: Line item quantity
> type: INT
> defaultAggr: SUM
> store_sales:
> displayString: Store Sales
> type: DOUBLE
> defaultAggr: SUM
> formatString: #,###.##
> unit_sales:
> displayString: Unit Sales
> type: BIGINT
> defaultAggr: SUM
> formatString: #,###
> line_item_tax:
> displayString: Line item tax
> type: FLOAT
> defaultAggr: SUM
> max_line_item_discount:
> displayString: Maximum Line item discount
> type: FLOAT
> defaultAggr: MAX
> store_cost:
> displayString: Store Cost
> type: DOUBLE
> defaultAggr: SUM
> formatString: #,###.00
> startTime: 2015-02-28T23:30:00.000+05:30
> max_line_item_price:
> displayString: Maximum Line item price
> type: FLOAT
> defaultAggr: MAX
> line_item_discount_amount:
> displayString: Line item discount
> type: FLOAT
> defaultAggr: SUM
> line_item_product_price:
> displayString: Line item product price
> type: FLOAT
> defaultAggr: SUM
> dimAttributes:
> production_location:
> hierarchy:
> production_city_name:
> displayString: Production City
> description: City name in which the product was produced
> refSpec:
> chainRefColumn:
> -
> chainName: production_city
> refCol: name
> destTable: city
> type: string
> joinKey: false
> production_state:
> displayString: Production State
> description: State name in which the product was produced
> type: string
> joinKey: false
> production_country:
> displayString: Production Country
> description: Country name in which the product was produced
> type: string
> joinKey: false
> joinKey: false
> customer_city_name:
> displayString: Customer City
> description: City name to which the customer belongs
> refSpec:
> chainRefColumn:
> -
> chainName: customer_city
> refCol: name
> destTable: city
> type: string
> joinKey: false
> production_city_id:
> type: int
> joinKey: false
> product_id:
> type: int
> joinKey: false
> order_id:
> type: int
> joinKey: false
> delivery_city_id:
> type: int
> joinKey: false
> delivery_time:
> type: timestamp
> joinKey: false
> order_time:
> type: timestamp
> joinKey: false
> order_line_number:
> type: int
> joinKey: false
> customer_city_id:
> type: int
> startTime: 2015-02-28T23:30:00.000+05:30
> joinKey: false
> promotion_id:
> type: int
> joinKey: false
> delivery_city_name:
> displayString: Delivery City
> description: City name to which the product was delivered
> refSpec:
> chainRefColumn:
> -
> chainName: delivery_city
> refCol: name
> destTable: city
> type: string
> joinKey: false
> customer_id:
> type: int
> joinKey: false
> expressions:
> profit:
> displayString: Profit
> exprSpec:
> -
> expr: store_sales - store_cost
> type: double
> promotion_sales:
> displayString: Promotion sales
> exprSpec:
> -
> expr: sum(case when promotion_id = 0 then 0 else store_sales end)
> startTime: 2015-04-11T23:30:00.000+05:30
> -
> expr: sum(case when promotion_id = -1 then 0 when promotion_id = -1 then 0 else store_sales end)
> endTime: 2015-04-11T23:30:00.000+05:30
> type: double
> joinChains:
> product_details:
> paths:
> -
> sales.product_id=product.id
> destTable: product
> production_city:
> paths:
> -
> sales.production_city_id=city.id
> destTable: city
> customer_details:
> paths:
> -
> sales.customer_id=customer.id
> destTable: customer
> delivery_city:
> paths:
> -
> sales.delivery_city_id=city.id
> destTable: city
> customer_city:
> paths:
> -
> sales.customer_city_id=city.id
> -
> sales.customer_id=customer.id
> customer.city_id=city.id
> destTable: city
>
> ```
>
> ```
> lens-shell>query details
> queryHandle: a186be92-fc1f-4509-9c8b-6ce6f1f7bdbb
> userQuery: cube select measure2 from sample_cube where time_range_in(dt, '2014-06-24-23', '2014-06-25-00')
> submittedUser: anonymous
> priority: VERY_HIGH
> isPersistent: false
> selectedDriverName: hive/hive1
> driverQuery: INSERT OVERWRITE DIRECTORY "file:/tmp/lensreports/hdfsout/a186be92-fc1f-4509-9c8b-6ce6f1f7bdbb" SELECT sum(( sample_cube . measure2 )) FROM local_fact1 sample_cube WHERE (((( sample_cube . dt ) = '2014-06-24-23' )))
> status:
> Status : SUCCESSFUL
> Message : Query is successful!
> Progress : 1.0
> Result Available
> driverOpHandle: OperationHandle [opType=EXECUTE_STATEMENT, getHandleIdentifier()=1da0e13e-eb67-484b-931f-1ca5584ac030]
> submissionTime: 1452083135606
> launchTime: 1452083141739
> driverStartTime: 1452083139777
> driverFinishTime: 1452083149324
> finishTime: 1452083149336
> closedTime: 0
>
> lens-shell>
> ```
>
>
> Thanks,
>
> Rajat Khandelwal
>
>
Re: Review Request 41035: LENS-791: CLI format json strips away all
commas, including useful ones
Posted by Rajat Khandelwal <ra...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/41035/
-----------------------------------------------------------
(Updated Feb. 3, 2016, 7:28 p.m.)
Review request for lens.
Bugs: LENS-791
https://issues.apache.org/jira/browse/LENS-791
Repository: lens
Description
-------
fixing cli formatting
Diffs (updated)
-----
lens-api/pom.xml e4a89ff8d769bdfe0d70cc6e673c40b53ef6465e
lens-api/src/main/java/org/apache/lens/api/APIResult.java f50d3ea153948cf7b64d4bda0bee9c490908c45a
lens-api/src/main/java/org/apache/lens/api/DateTime.java 3f89fdd17c7c1100a8b4e3f73c711ef67ad87e9f
lens-api/src/main/java/org/apache/lens/api/LensConf.java 67d6461e5039f1394b15428904c47fc8732ef4fd
lens-api/src/main/java/org/apache/lens/api/LensSessionHandle.java dc9142d37559546adce8e92631987d5f7042ab39
lens-api/src/main/java/org/apache/lens/api/ToXMLString.java PRE-CREATION
lens-api/src/main/java/org/apache/lens/api/ToYAMLString.java PRE-CREATION
lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 85a47ec5df069d7f7a0255c86570dd9a87c5b50f
lens-api/src/main/java/org/apache/lens/api/jaxb/YAMLToStringStrategy.java PRE-CREATION
lens-api/src/main/java/org/apache/lens/api/query/InMemoryQueryResult.java 36d0ba02417b722a0d091b87ebbee7e246b26a26
lens-api/src/main/java/org/apache/lens/api/query/LensPreparedQuery.java f5bc35d38518b89894a385397c0bb6b39af0a474
lens-api/src/main/java/org/apache/lens/api/query/LensQuery.java 23c4decfe48fdfdb733beb100ad729468237c93c
lens-api/src/main/java/org/apache/lens/api/query/QueryHandle.java 2d4c706b693660b960c7fde2ddfde47d7d8707c3
lens-api/src/main/java/org/apache/lens/api/query/QueryPrepareHandle.java 38e87b17e479fd393f7b39fdc0399f6dd49c2955
lens-api/src/main/java/org/apache/lens/api/query/QueryResult.java 3bc7cc722a9b4af4ccd214ef71e51d3ad58afc1e
lens-api/src/main/java/org/apache/lens/api/query/QueryResultSetMetadata.java 22c61cf3bb06613bc926e9fbc869fa1a4a349507
lens-api/src/main/java/org/apache/lens/api/query/QueryStatus.java 915dac7ce3fc9e5f06eb802d8a3c88cc4237deea
lens-api/src/main/java/org/apache/lens/api/query/QuerySubmitResult.java f3fb6db20e71caefe9884a8a89e58bdefab9c0be
lens-api/src/main/java/org/apache/lens/api/query/SchedulerJobInfo.java 1ae7894149c4a29be0e96fe8c2f7c0de2d14dc99
lens-api/src/main/java/org/apache/lens/api/result/QueryCostTO.java 266a4b71d970306d34420ab98a852b5dbc5b893d
lens-api/src/test/java/org/apache/lens/api/jaxb/YAMLToStringStrategyTest.java PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.DateTime.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.DateTime.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.LensConf.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.LensConf.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.InMemoryQueryResult.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.InMemoryQueryResult.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.LensPreparedQuery.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.LensPreparedQuery.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.LensQuery.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.LensQuery.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.PersistentQueryResult.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.PersistentQueryResult.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandle.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandle.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandleWithResultSet.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandleWithResultSet.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPlan.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPlan.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPrepareHandle.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPrepareHandle.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryResultSetMetadata.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryResultSetMetadata.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryStatus.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryStatus.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.ResultRow.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.ResultRow.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.SchedulerJobHandle.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.SchedulerJobHandle.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.result.QueryCostTO.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.result.QueryCostTO.yaml PRE-CREATION
lens-cli/src/main/java/org/apache/lens/cli/commands/BaseLensCommand.java 66a6c4d4abfcb8d3a030e637232d81f4918bdb3f
lens-cli/src/main/java/org/apache/lens/cli/commands/LensCRUDCommand.java a0c05b41650cd8303879c6c370d892c544adf6ca
lens-cli/src/main/java/org/apache/lens/cli/commands/LensConnectionCommands.java 0aa51a8eeea2ad3e0b43d7f011c50b83b0ba30e4
lens-cli/src/main/java/org/apache/lens/cli/commands/LensDimensionCommands.java dc8349e322adcb031ef503850e012603f5865088
lens-cli/src/main/java/org/apache/lens/cli/commands/LensQueryCommands.java e2ac3afdd7c4000622c8b83546d99ecc1dd25ec4
lens-cli/src/main/java/org/apache/lens/cli/commands/LogicalTableCrudCommand.java a04d5c836a31b625e0efcd5509d999d6e483cbb6
lens-cli/src/test/java/org/apache/lens/cli/LensCliApplicationTest.java 83123356f2fe27931687d2046fbc23bd21ad335f
lens-cli/src/test/java/org/apache/lens/cli/TestLensCubeCommands.java 43d0722e861ec5d90628bc40daa0d7703a119575
lens-cli/src/test/java/org/apache/lens/cli/TestLensDimensionCommands.java 160699bf6e895bf15ac10a426c6038db4dcc5959
lens-cli/src/test/java/org/apache/lens/cli/TestLensDimensionTableCommands.java bf9204419d891ac3559c1eda64900824860b7ff1
lens-cli/src/test/java/org/apache/lens/cli/TestLensFactCommands.java 448d0f6a8056f94283503d068963c7c7ebb8aa17
lens-cli/src/test/java/org/apache/lens/cli/TestLensStorageCommands.java 8bccac2bf083941acc81963195e6bc8dd59aaa7b
lens-client/src/main/java/org/apache/lens/client/LensClient.java f7f99c7c20b97e9f2b53c39ee147d5cc682f93dc
lens-client/src/main/java/org/apache/lens/client/LensMetadataClient.java 07ce41ea720e92c6ae553d11026410840da5334a
lens-client/src/main/java/org/apache/lens/client/LensStatement.java 00091829b82ce1afc9f516e086b2cbcc3be768bd
lens-client/src/main/resources/lens-client-default.xml 1b7c9781e2c4221f9831eaefd6c0efa435c0a91e
lens-examples/pom.xml c97392e67ebb621c65069287498628538de3a086
lens-examples/src/main/java/org/apache/lens/examples/SampleMetastore.java b6385d47a7bde764698d7e79ca7f5d85e9c35cc5
lens-examples/src/main/resources/example-job.xml 93f36d4da711315d3bd6b7af230146fcd74ec237
lens-examples/src/test/java/org/apache/lens/examples/ExampleSchemaToStringTest.java PRE-CREATION
lens-examples/src/test/resources/yaml/city-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/city.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/city_subset.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/city_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/customer-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/customer.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/customer_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/db-storage.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim1-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim2-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim4-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim_table2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim_table3.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim_table4.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/example-job.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact1-local-part1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact1-local-part2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact1-local-part3.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact2-local-part1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact2-local-part2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact2-local-part3.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/local-cluster-storage.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/local-storage.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/product-local-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/product.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/product_db_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/product_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part3.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part4.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part5.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part6.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/rawfact.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-continuous-fact.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact1-local-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact1-mydb-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact2-local-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact2-mydb-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-cube.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-raw-fact.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-raw-local-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sample-cube.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sample-db-only-dimension.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sample-dimension.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sample-dimension2.yaml PRE-CREATION
lens-server/src/test/java/org/apache/lens/server/LensJerseyTest.java a00a86bbe61d764007352cc9b18b840d66dae96d
lens-server/src/test/java/org/apache/lens/server/LensServerTestUtil.java ddca12fcb66a2852e672486c0b96c370502d0a71
pom.xml bc81d81743884aa9d13e071ed4f2a1469e4cf6ea
src/site/apt/user/client-config.apt 3d990a9a0e238fbf8924afd92a872bfd70765cd9
Diff: https://reviews.apache.org/r/41035/diff/
Testing
-------
```
Welcome to Lens Client
lens-shell>describe cube sales
properties:
cube.col.production_city_name.description: City name in which the product was produced
cube.measure.rating.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.customer_city_name.type: string
cube.col.profit.displaystring: Profit
cube.dimension.production_city_id.type: int
cube.dimension.customer_city_name.class: org.apache.lens.cube.metadata.ReferencedDimAtrribute
cube.dimension.production_city_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.measure.line_item_quantity.aggregate: SUM
cube.col.promotion_sales.cost: 0.0
cube.dimension.delivery_city_id.type: int
cube.timedim.partition.delivery_time: dt
cube.sales.joinchains.list0: customer_details,product_details,customer_city,delivery_city,production_city
base.sales.expressions.list.size: 1
cube.dimension.order_id.type: int
cube.measure.max_line_item_price.aggregate: MAX
transient_lastDdlTime: 1450698320
cube.measure.line_item_product_price.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.col.profit.type: double
cube.col.promotion_sales.expr: c3VtKGNhc2Ugd2hlbiBwcm9tb3Rpb25faWQgPSAwIHRoZW4gMCBlbHNlIHN0b3JlX3NhbGVzIGVu
ZCk=
:2015-04-11-18:|c3VtKGNhc2Ugd2hlbiBwcm9tb3Rpb25faWQgPSAtMSB0aGVuIDAgd2hlbiBwcm9tb3Rpb25faWQg
PSAtMSB0aGVuIDAgZWxzZSBzdG9yZV9zYWxlcyBlbmQp
::2015-04-11-18
cube.measure.line_item_tax.aggregate: SUM
cube.measure.line_item_tax.type: float
cube.col.delivery_city_name.description: City name to which the product was delivered
cube.measure.unit_sales.type: bigint
cube.measure.store_sales.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.measure.line_item_quantity.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.customer_city_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.production_city_name.chain.name: production_city
cube.dimension.delivery_city_name.class: org.apache.lens.cube.metadata.ReferencedDimAtrribute
cube.dimension.delivery_city_name.chain.name: delivery_city
cube.col.max_line_item_discount.displaystring: Maximum Line item discount
base.sales.expressions.list0: profit,promotion_sales
cube.dimension.production_country.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.customer_city_name.description: City name to which the customer belongs
cube.sales.timed.dimensions.list: order_time,delivery_time
cube.measure.line_item_product_price.type: float
cube.col.line_item_product_price.displaystring: Line item product price
cube.joinchain.customer_city.fullchain.1: sales.customer_id.false,customer.id.false,customer.city_id.false,city.id.false
cube.col.line_item_discount_amount.displaystring: Line item discount
cube.joinchain.customer_city.fullchain.0: sales.customer_city_id.false,city.id.false
cube.joinchain.customer_city.numchains: 2
cube.dimension.customer_city_id.type: int
cube.col.profit.expr.base64: true
cube.dimension.production_country.type: string
cube.dimension.customer_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.customer_id.type: int
cube.measure.max_line_item_price.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.delivery_city_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.store_cost.displaystring: Store Cost
cube.joinchain.customer_details.numchains: 1
cube.timedim.relation.order_time: delivery_time+[-20 days,-1 hour]
cube.table.sales.weight: 0.0
cube.dimension.product_id.type: int
cube.measure.line_item_quantity.type: int
cube.col.max_line_item_price.displaystring: Maximum Line item price
cube.dimension.customer_city_name.chain.column.name: name
cube.joinchain.delivery_city.numchains: 1
cube.col.customer_city_name.displaystring: Customer City
cube.measure.max_line_item_discount.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.order_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.customer_city_name.chain.name: customer_city
cube.sales.dimensions.list.size: 1
cube.joinchain.product_details.fullchain.0: sales.product_id.false,product.id.false
cube.dimension.production_state.type: string
cube.measure.max_line_item_price.type: float
cube.col.store_sales.displaystring: Store Sales
cube.col.delivery_city_name.displaystring: Delivery City
cube.table.type: CUBE
cube.col.promotion_sales.expr.base64: true
cube.col.store_cost.starttime: 2015-02-28-18
cube.dimension.production_state.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.unit_sales.displaystring: Unit Sales
cube.sales.measures.list0: unit_sales,store_sales,store_cost,line_item_quantity,line_item_product_price,line_item_discount_amount,line_item_tax,max_line_item_price,max_line_item_discount,rating
cube.col.production_state.displaystring: Production State
cube.dimension.order_time.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.measure.unit_sales.format: #,###
cube.col.line_item_tax.displaystring: Line item tax
cube.measure.max_line_item_discount.type: float
cube.dimension.product_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.measure.line_item_product_price.aggregate: SUM
cube.dimension.production_city_name.class: org.apache.lens.cube.metadata.ReferencedDimAtrribute
cube.col.production_country.description: Country name in which the product was produced
cube.col.production_city_name.displaystring: Production City
cube.measure.store_sales.format: #,###.##
cube.col.profit.expr: c3RvcmVfc2FsZXMgLSBzdG9yZV9jb3N0
::
cube.dimension.delivery_time.type: timestamp
cube.measure.rating.type: float
cube.measure.line_item_tax.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.measure.unit_sales.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.sales.joinchains.list.size: 1
cube.joinchain.customer_details.fullchain.0: sales.customer_id.false,customer.id.false
cube.col.customer_city_id.starttime: 2015-02-28-18
cube.joinchain.production_city.numchains: 1
cube.sales.dimensions.list0: customer_id,product_id,promotion_id,order_id,order_line_number,order_time,delivery_time,customer_city_id,production_city_id,delivery_city_id,customer_city_name,production_location,delivery_city_name
cube.measure.store_cost.type: double
cube.dimension.production_city_name.chain.column.name: name
cube.measure.store_sales.aggregate: SUM
cube.joinchain.product_details.numchains: 1
cube.measure.rating.aggregate: AVG
cube.dimension.order_line_number.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.promotion_sales.type: double
cube.dimension.order_line_number.type: int
cube.dimension.production_location.hierarchy.2: production_country,org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.delivery_city_name.type: string
cube.dimension.production_location.hierarchy.1: production_state,org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.production_location.hierarchy.0: production_city_name,org.apache.lens.cube.metadata.ReferencedDimAtrribute
cube.dimension.delivery_city_name.chain.column.name: name
cube.joinchain.delivery_city.fullchain.0: sales.delivery_city_id.false,city.id.false
cube.measure.store_sales.type: double
cube.measure.line_item_discount_amount.aggregate: SUM
cube.dimension.promotion_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.production_country.displaystring: Production Country
cube.col.profit.cost: 0.0
cube.measure.line_item_discount_amount.type: float
cube.measure.unit_sales.aggregate: SUM
cube.sales.measures.list.size: 1
cube.dimension.production_location.class: org.apache.lens.cube.metadata.HierarchicalDimAttribute
cube.dimension.promotion_id.type: int
cube.measure.max_line_item_discount.aggregate: MAX
cube.measure.line_item_discount_amount.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.delivery_time.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.measure.store_cost.aggregate: SUM
cube.col.rating.displaystring: Rating
cube.measure.store_cost.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.col.production_state.description: State name in which the product was produced
cube.col.promotion_sales.displaystring: Promotion sales
cube.joinchain.production_city.fullchain.0: sales.production_city_id.false,city.id.false
cube.dimension.order_time.type: timestamp
cube.col.line_item_quantity.displaystring: Line item quantity
cube.timedim.partition.order_time: ot
cube.measure.store_cost.format: #,###.00
cube.dimension.production_city_name.type: string
name: sales
measures:
rating:
displayString: Rating
type: FLOAT
defaultAggr: AVG
line_item_quantity:
displayString: Line item quantity
type: INT
defaultAggr: SUM
store_sales:
displayString: Store Sales
type: DOUBLE
defaultAggr: SUM
formatString: #,###.##
unit_sales:
displayString: Unit Sales
type: BIGINT
defaultAggr: SUM
formatString: #,###
line_item_tax:
displayString: Line item tax
type: FLOAT
defaultAggr: SUM
max_line_item_discount:
displayString: Maximum Line item discount
type: FLOAT
defaultAggr: MAX
store_cost:
displayString: Store Cost
type: DOUBLE
defaultAggr: SUM
formatString: #,###.00
startTime: 2015-02-28T23:30:00.000+05:30
max_line_item_price:
displayString: Maximum Line item price
type: FLOAT
defaultAggr: MAX
line_item_discount_amount:
displayString: Line item discount
type: FLOAT
defaultAggr: SUM
line_item_product_price:
displayString: Line item product price
type: FLOAT
defaultAggr: SUM
dimAttributes:
production_location:
hierarchy:
production_city_name:
displayString: Production City
description: City name in which the product was produced
refSpec:
chainRefColumn:
-
chainName: production_city
refCol: name
destTable: city
type: string
joinKey: false
production_state:
displayString: Production State
description: State name in which the product was produced
type: string
joinKey: false
production_country:
displayString: Production Country
description: Country name in which the product was produced
type: string
joinKey: false
joinKey: false
customer_city_name:
displayString: Customer City
description: City name to which the customer belongs
refSpec:
chainRefColumn:
-
chainName: customer_city
refCol: name
destTable: city
type: string
joinKey: false
production_city_id:
type: int
joinKey: false
product_id:
type: int
joinKey: false
order_id:
type: int
joinKey: false
delivery_city_id:
type: int
joinKey: false
delivery_time:
type: timestamp
joinKey: false
order_time:
type: timestamp
joinKey: false
order_line_number:
type: int
joinKey: false
customer_city_id:
type: int
startTime: 2015-02-28T23:30:00.000+05:30
joinKey: false
promotion_id:
type: int
joinKey: false
delivery_city_name:
displayString: Delivery City
description: City name to which the product was delivered
refSpec:
chainRefColumn:
-
chainName: delivery_city
refCol: name
destTable: city
type: string
joinKey: false
customer_id:
type: int
joinKey: false
expressions:
profit:
displayString: Profit
exprSpec:
-
expr: store_sales - store_cost
type: double
promotion_sales:
displayString: Promotion sales
exprSpec:
-
expr: sum(case when promotion_id = 0 then 0 else store_sales end)
startTime: 2015-04-11T23:30:00.000+05:30
-
expr: sum(case when promotion_id = -1 then 0 when promotion_id = -1 then 0 else store_sales end)
endTime: 2015-04-11T23:30:00.000+05:30
type: double
joinChains:
product_details:
paths:
-
sales.product_id=product.id
destTable: product
production_city:
paths:
-
sales.production_city_id=city.id
destTable: city
customer_details:
paths:
-
sales.customer_id=customer.id
destTable: customer
delivery_city:
paths:
-
sales.delivery_city_id=city.id
destTable: city
customer_city:
paths:
-
sales.customer_city_id=city.id
-
sales.customer_id=customer.id
customer.city_id=city.id
destTable: city
```
```
lens-shell>query details
queryHandle: a186be92-fc1f-4509-9c8b-6ce6f1f7bdbb
userQuery: cube select measure2 from sample_cube where time_range_in(dt, '2014-06-24-23', '2014-06-25-00')
submittedUser: anonymous
priority: VERY_HIGH
isPersistent: false
selectedDriverName: hive/hive1
driverQuery: INSERT OVERWRITE DIRECTORY "file:/tmp/lensreports/hdfsout/a186be92-fc1f-4509-9c8b-6ce6f1f7bdbb" SELECT sum(( sample_cube . measure2 )) FROM local_fact1 sample_cube WHERE (((( sample_cube . dt ) = '2014-06-24-23' )))
status:
Status : SUCCESSFUL
Message : Query is successful!
Progress : 1.0
Result Available
driverOpHandle: OperationHandle [opType=EXECUTE_STATEMENT, getHandleIdentifier()=1da0e13e-eb67-484b-931f-1ca5584ac030]
submissionTime: 1452083135606
launchTime: 1452083141739
driverStartTime: 1452083139777
driverFinishTime: 1452083149324
finishTime: 1452083149336
closedTime: 0
lens-shell>
```
Thanks,
Rajat Khandelwal
Re: Review Request 41035: LENS-791: CLI format json strips away all
commas, including useful ones
Posted by Rajat Khandelwal <ra...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/41035/
-----------------------------------------------------------
(Updated Feb. 3, 2016, 6:40 p.m.)
Review request for lens.
Bugs: LENS-791
https://issues.apache.org/jira/browse/LENS-791
Repository: lens
Description
-------
fixing cli formatting
Diffs (updated)
-----
lens-api/pom.xml e4a89ff8d769bdfe0d70cc6e673c40b53ef6465e
lens-api/src/main/java/org/apache/lens/api/APIResult.java f50d3ea153948cf7b64d4bda0bee9c490908c45a
lens-api/src/main/java/org/apache/lens/api/DateTime.java 3f89fdd17c7c1100a8b4e3f73c711ef67ad87e9f
lens-api/src/main/java/org/apache/lens/api/LensConf.java 67d6461e5039f1394b15428904c47fc8732ef4fd
lens-api/src/main/java/org/apache/lens/api/LensSessionHandle.java dc9142d37559546adce8e92631987d5f7042ab39
lens-api/src/main/java/org/apache/lens/api/ToXMLString.java PRE-CREATION
lens-api/src/main/java/org/apache/lens/api/ToYAMLString.java PRE-CREATION
lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 85a47ec5df069d7f7a0255c86570dd9a87c5b50f
lens-api/src/main/java/org/apache/lens/api/jaxb/YAMLToStringStrategy.java PRE-CREATION
lens-api/src/main/java/org/apache/lens/api/query/InMemoryQueryResult.java 36d0ba02417b722a0d091b87ebbee7e246b26a26
lens-api/src/main/java/org/apache/lens/api/query/LensPreparedQuery.java f5bc35d38518b89894a385397c0bb6b39af0a474
lens-api/src/main/java/org/apache/lens/api/query/LensQuery.java 23c4decfe48fdfdb733beb100ad729468237c93c
lens-api/src/main/java/org/apache/lens/api/query/QueryHandle.java 2d4c706b693660b960c7fde2ddfde47d7d8707c3
lens-api/src/main/java/org/apache/lens/api/query/QueryPrepareHandle.java 38e87b17e479fd393f7b39fdc0399f6dd49c2955
lens-api/src/main/java/org/apache/lens/api/query/QueryResult.java 3bc7cc722a9b4af4ccd214ef71e51d3ad58afc1e
lens-api/src/main/java/org/apache/lens/api/query/QueryResultSetMetadata.java 22c61cf3bb06613bc926e9fbc869fa1a4a349507
lens-api/src/main/java/org/apache/lens/api/query/QueryStatus.java 915dac7ce3fc9e5f06eb802d8a3c88cc4237deea
lens-api/src/main/java/org/apache/lens/api/query/QuerySubmitResult.java f3fb6db20e71caefe9884a8a89e58bdefab9c0be
lens-api/src/main/java/org/apache/lens/api/query/SchedulerJobInfo.java 1ae7894149c4a29be0e96fe8c2f7c0de2d14dc99
lens-api/src/main/java/org/apache/lens/api/result/QueryCostTO.java 266a4b71d970306d34420ab98a852b5dbc5b893d
lens-api/src/test/java/org/apache/lens/api/jaxb/YAMLToStringStrategyTest.java PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.DateTime.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.DateTime.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.LensConf.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.LensConf.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.InMemoryQueryResult.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.InMemoryQueryResult.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.LensPreparedQuery.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.LensPreparedQuery.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.LensQuery.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.LensQuery.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.PersistentQueryResult.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.PersistentQueryResult.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandle.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandle.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandleWithResultSet.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandleWithResultSet.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPlan.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPlan.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPrepareHandle.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPrepareHandle.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryResultSetMetadata.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryResultSetMetadata.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryStatus.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryStatus.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.ResultRow.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.ResultRow.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.SchedulerJobHandle.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.SchedulerJobHandle.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.result.QueryCostTO.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.result.QueryCostTO.yaml PRE-CREATION
lens-cli/src/main/java/org/apache/lens/cli/commands/BaseLensCommand.java 66a6c4d4abfcb8d3a030e637232d81f4918bdb3f
lens-cli/src/main/java/org/apache/lens/cli/commands/LensCRUDCommand.java a0c05b41650cd8303879c6c370d892c544adf6ca
lens-cli/src/main/java/org/apache/lens/cli/commands/LensConnectionCommands.java 0aa51a8eeea2ad3e0b43d7f011c50b83b0ba30e4
lens-cli/src/main/java/org/apache/lens/cli/commands/LensDimensionCommands.java dc8349e322adcb031ef503850e012603f5865088
lens-cli/src/main/java/org/apache/lens/cli/commands/LensQueryCommands.java e2ac3afdd7c4000622c8b83546d99ecc1dd25ec4
lens-cli/src/main/java/org/apache/lens/cli/commands/LogicalTableCrudCommand.java a04d5c836a31b625e0efcd5509d999d6e483cbb6
lens-client/src/main/java/org/apache/lens/client/LensClient.java f7f99c7c20b97e9f2b53c39ee147d5cc682f93dc
lens-client/src/main/java/org/apache/lens/client/LensMetadataClient.java 07ce41ea720e92c6ae553d11026410840da5334a
lens-client/src/main/java/org/apache/lens/client/LensStatement.java 00091829b82ce1afc9f516e086b2cbcc3be768bd
lens-client/src/main/resources/lens-client-default.xml 1b7c9781e2c4221f9831eaefd6c0efa435c0a91e
lens-examples/pom.xml c97392e67ebb621c65069287498628538de3a086
lens-examples/src/main/java/org/apache/lens/examples/SampleMetastore.java b6385d47a7bde764698d7e79ca7f5d85e9c35cc5
lens-examples/src/main/resources/example-job.xml 93f36d4da711315d3bd6b7af230146fcd74ec237
lens-examples/src/test/java/org/apache/lens/examples/ExampleSchemaToStringTest.java PRE-CREATION
lens-examples/src/test/resources/yaml/city-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/city.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/city_subset.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/city_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/customer-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/customer.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/customer_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/db-storage.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim1-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim2-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim4-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim_table2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim_table3.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim_table4.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/example-job.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact1-local-part1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact1-local-part2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact1-local-part3.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact2-local-part1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact2-local-part2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact2-local-part3.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/local-cluster-storage.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/local-storage.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/product-local-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/product.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/product_db_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/product_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part3.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part4.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part5.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part6.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/rawfact.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-continuous-fact.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact1-local-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact1-mydb-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact2-local-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact2-mydb-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-cube.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-raw-fact.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-raw-local-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sample-cube.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sample-db-only-dimension.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sample-dimension.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sample-dimension2.yaml PRE-CREATION
lens-server/src/test/java/org/apache/lens/server/LensJerseyTest.java a00a86bbe61d764007352cc9b18b840d66dae96d
lens-server/src/test/java/org/apache/lens/server/LensServerTestUtil.java ddca12fcb66a2852e672486c0b96c370502d0a71
pom.xml bc81d81743884aa9d13e071ed4f2a1469e4cf6ea
src/site/apt/user/client-config.apt 3d990a9a0e238fbf8924afd92a872bfd70765cd9
Diff: https://reviews.apache.org/r/41035/diff/
Testing
-------
```
Welcome to Lens Client
lens-shell>describe cube sales
properties:
cube.col.production_city_name.description: City name in which the product was produced
cube.measure.rating.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.customer_city_name.type: string
cube.col.profit.displaystring: Profit
cube.dimension.production_city_id.type: int
cube.dimension.customer_city_name.class: org.apache.lens.cube.metadata.ReferencedDimAtrribute
cube.dimension.production_city_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.measure.line_item_quantity.aggregate: SUM
cube.col.promotion_sales.cost: 0.0
cube.dimension.delivery_city_id.type: int
cube.timedim.partition.delivery_time: dt
cube.sales.joinchains.list0: customer_details,product_details,customer_city,delivery_city,production_city
base.sales.expressions.list.size: 1
cube.dimension.order_id.type: int
cube.measure.max_line_item_price.aggregate: MAX
transient_lastDdlTime: 1450698320
cube.measure.line_item_product_price.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.col.profit.type: double
cube.col.promotion_sales.expr: c3VtKGNhc2Ugd2hlbiBwcm9tb3Rpb25faWQgPSAwIHRoZW4gMCBlbHNlIHN0b3JlX3NhbGVzIGVu
ZCk=
:2015-04-11-18:|c3VtKGNhc2Ugd2hlbiBwcm9tb3Rpb25faWQgPSAtMSB0aGVuIDAgd2hlbiBwcm9tb3Rpb25faWQg
PSAtMSB0aGVuIDAgZWxzZSBzdG9yZV9zYWxlcyBlbmQp
::2015-04-11-18
cube.measure.line_item_tax.aggregate: SUM
cube.measure.line_item_tax.type: float
cube.col.delivery_city_name.description: City name to which the product was delivered
cube.measure.unit_sales.type: bigint
cube.measure.store_sales.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.measure.line_item_quantity.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.customer_city_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.production_city_name.chain.name: production_city
cube.dimension.delivery_city_name.class: org.apache.lens.cube.metadata.ReferencedDimAtrribute
cube.dimension.delivery_city_name.chain.name: delivery_city
cube.col.max_line_item_discount.displaystring: Maximum Line item discount
base.sales.expressions.list0: profit,promotion_sales
cube.dimension.production_country.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.customer_city_name.description: City name to which the customer belongs
cube.sales.timed.dimensions.list: order_time,delivery_time
cube.measure.line_item_product_price.type: float
cube.col.line_item_product_price.displaystring: Line item product price
cube.joinchain.customer_city.fullchain.1: sales.customer_id.false,customer.id.false,customer.city_id.false,city.id.false
cube.col.line_item_discount_amount.displaystring: Line item discount
cube.joinchain.customer_city.fullchain.0: sales.customer_city_id.false,city.id.false
cube.joinchain.customer_city.numchains: 2
cube.dimension.customer_city_id.type: int
cube.col.profit.expr.base64: true
cube.dimension.production_country.type: string
cube.dimension.customer_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.customer_id.type: int
cube.measure.max_line_item_price.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.delivery_city_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.store_cost.displaystring: Store Cost
cube.joinchain.customer_details.numchains: 1
cube.timedim.relation.order_time: delivery_time+[-20 days,-1 hour]
cube.table.sales.weight: 0.0
cube.dimension.product_id.type: int
cube.measure.line_item_quantity.type: int
cube.col.max_line_item_price.displaystring: Maximum Line item price
cube.dimension.customer_city_name.chain.column.name: name
cube.joinchain.delivery_city.numchains: 1
cube.col.customer_city_name.displaystring: Customer City
cube.measure.max_line_item_discount.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.order_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.customer_city_name.chain.name: customer_city
cube.sales.dimensions.list.size: 1
cube.joinchain.product_details.fullchain.0: sales.product_id.false,product.id.false
cube.dimension.production_state.type: string
cube.measure.max_line_item_price.type: float
cube.col.store_sales.displaystring: Store Sales
cube.col.delivery_city_name.displaystring: Delivery City
cube.table.type: CUBE
cube.col.promotion_sales.expr.base64: true
cube.col.store_cost.starttime: 2015-02-28-18
cube.dimension.production_state.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.unit_sales.displaystring: Unit Sales
cube.sales.measures.list0: unit_sales,store_sales,store_cost,line_item_quantity,line_item_product_price,line_item_discount_amount,line_item_tax,max_line_item_price,max_line_item_discount,rating
cube.col.production_state.displaystring: Production State
cube.dimension.order_time.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.measure.unit_sales.format: #,###
cube.col.line_item_tax.displaystring: Line item tax
cube.measure.max_line_item_discount.type: float
cube.dimension.product_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.measure.line_item_product_price.aggregate: SUM
cube.dimension.production_city_name.class: org.apache.lens.cube.metadata.ReferencedDimAtrribute
cube.col.production_country.description: Country name in which the product was produced
cube.col.production_city_name.displaystring: Production City
cube.measure.store_sales.format: #,###.##
cube.col.profit.expr: c3RvcmVfc2FsZXMgLSBzdG9yZV9jb3N0
::
cube.dimension.delivery_time.type: timestamp
cube.measure.rating.type: float
cube.measure.line_item_tax.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.measure.unit_sales.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.sales.joinchains.list.size: 1
cube.joinchain.customer_details.fullchain.0: sales.customer_id.false,customer.id.false
cube.col.customer_city_id.starttime: 2015-02-28-18
cube.joinchain.production_city.numchains: 1
cube.sales.dimensions.list0: customer_id,product_id,promotion_id,order_id,order_line_number,order_time,delivery_time,customer_city_id,production_city_id,delivery_city_id,customer_city_name,production_location,delivery_city_name
cube.measure.store_cost.type: double
cube.dimension.production_city_name.chain.column.name: name
cube.measure.store_sales.aggregate: SUM
cube.joinchain.product_details.numchains: 1
cube.measure.rating.aggregate: AVG
cube.dimension.order_line_number.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.promotion_sales.type: double
cube.dimension.order_line_number.type: int
cube.dimension.production_location.hierarchy.2: production_country,org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.delivery_city_name.type: string
cube.dimension.production_location.hierarchy.1: production_state,org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.production_location.hierarchy.0: production_city_name,org.apache.lens.cube.metadata.ReferencedDimAtrribute
cube.dimension.delivery_city_name.chain.column.name: name
cube.joinchain.delivery_city.fullchain.0: sales.delivery_city_id.false,city.id.false
cube.measure.store_sales.type: double
cube.measure.line_item_discount_amount.aggregate: SUM
cube.dimension.promotion_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.production_country.displaystring: Production Country
cube.col.profit.cost: 0.0
cube.measure.line_item_discount_amount.type: float
cube.measure.unit_sales.aggregate: SUM
cube.sales.measures.list.size: 1
cube.dimension.production_location.class: org.apache.lens.cube.metadata.HierarchicalDimAttribute
cube.dimension.promotion_id.type: int
cube.measure.max_line_item_discount.aggregate: MAX
cube.measure.line_item_discount_amount.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.delivery_time.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.measure.store_cost.aggregate: SUM
cube.col.rating.displaystring: Rating
cube.measure.store_cost.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.col.production_state.description: State name in which the product was produced
cube.col.promotion_sales.displaystring: Promotion sales
cube.joinchain.production_city.fullchain.0: sales.production_city_id.false,city.id.false
cube.dimension.order_time.type: timestamp
cube.col.line_item_quantity.displaystring: Line item quantity
cube.timedim.partition.order_time: ot
cube.measure.store_cost.format: #,###.00
cube.dimension.production_city_name.type: string
name: sales
measures:
rating:
displayString: Rating
type: FLOAT
defaultAggr: AVG
line_item_quantity:
displayString: Line item quantity
type: INT
defaultAggr: SUM
store_sales:
displayString: Store Sales
type: DOUBLE
defaultAggr: SUM
formatString: #,###.##
unit_sales:
displayString: Unit Sales
type: BIGINT
defaultAggr: SUM
formatString: #,###
line_item_tax:
displayString: Line item tax
type: FLOAT
defaultAggr: SUM
max_line_item_discount:
displayString: Maximum Line item discount
type: FLOAT
defaultAggr: MAX
store_cost:
displayString: Store Cost
type: DOUBLE
defaultAggr: SUM
formatString: #,###.00
startTime: 2015-02-28T23:30:00.000+05:30
max_line_item_price:
displayString: Maximum Line item price
type: FLOAT
defaultAggr: MAX
line_item_discount_amount:
displayString: Line item discount
type: FLOAT
defaultAggr: SUM
line_item_product_price:
displayString: Line item product price
type: FLOAT
defaultAggr: SUM
dimAttributes:
production_location:
hierarchy:
production_city_name:
displayString: Production City
description: City name in which the product was produced
refSpec:
chainRefColumn:
-
chainName: production_city
refCol: name
destTable: city
type: string
joinKey: false
production_state:
displayString: Production State
description: State name in which the product was produced
type: string
joinKey: false
production_country:
displayString: Production Country
description: Country name in which the product was produced
type: string
joinKey: false
joinKey: false
customer_city_name:
displayString: Customer City
description: City name to which the customer belongs
refSpec:
chainRefColumn:
-
chainName: customer_city
refCol: name
destTable: city
type: string
joinKey: false
production_city_id:
type: int
joinKey: false
product_id:
type: int
joinKey: false
order_id:
type: int
joinKey: false
delivery_city_id:
type: int
joinKey: false
delivery_time:
type: timestamp
joinKey: false
order_time:
type: timestamp
joinKey: false
order_line_number:
type: int
joinKey: false
customer_city_id:
type: int
startTime: 2015-02-28T23:30:00.000+05:30
joinKey: false
promotion_id:
type: int
joinKey: false
delivery_city_name:
displayString: Delivery City
description: City name to which the product was delivered
refSpec:
chainRefColumn:
-
chainName: delivery_city
refCol: name
destTable: city
type: string
joinKey: false
customer_id:
type: int
joinKey: false
expressions:
profit:
displayString: Profit
exprSpec:
-
expr: store_sales - store_cost
type: double
promotion_sales:
displayString: Promotion sales
exprSpec:
-
expr: sum(case when promotion_id = 0 then 0 else store_sales end)
startTime: 2015-04-11T23:30:00.000+05:30
-
expr: sum(case when promotion_id = -1 then 0 when promotion_id = -1 then 0 else store_sales end)
endTime: 2015-04-11T23:30:00.000+05:30
type: double
joinChains:
product_details:
paths:
-
sales.product_id=product.id
destTable: product
production_city:
paths:
-
sales.production_city_id=city.id
destTable: city
customer_details:
paths:
-
sales.customer_id=customer.id
destTable: customer
delivery_city:
paths:
-
sales.delivery_city_id=city.id
destTable: city
customer_city:
paths:
-
sales.customer_city_id=city.id
-
sales.customer_id=customer.id
customer.city_id=city.id
destTable: city
```
```
lens-shell>query details
queryHandle: a186be92-fc1f-4509-9c8b-6ce6f1f7bdbb
userQuery: cube select measure2 from sample_cube where time_range_in(dt, '2014-06-24-23', '2014-06-25-00')
submittedUser: anonymous
priority: VERY_HIGH
isPersistent: false
selectedDriverName: hive/hive1
driverQuery: INSERT OVERWRITE DIRECTORY "file:/tmp/lensreports/hdfsout/a186be92-fc1f-4509-9c8b-6ce6f1f7bdbb" SELECT sum(( sample_cube . measure2 )) FROM local_fact1 sample_cube WHERE (((( sample_cube . dt ) = '2014-06-24-23' )))
status:
Status : SUCCESSFUL
Message : Query is successful!
Progress : 1.0
Result Available
driverOpHandle: OperationHandle [opType=EXECUTE_STATEMENT, getHandleIdentifier()=1da0e13e-eb67-484b-931f-1ca5584ac030]
submissionTime: 1452083135606
launchTime: 1452083141739
driverStartTime: 1452083139777
driverFinishTime: 1452083149324
finishTime: 1452083149336
closedTime: 0
lens-shell>
```
Thanks,
Rajat Khandelwal
Re: Review Request 41035: LENS-791: CLI format json strips away all
commas, including useful ones
Posted by Rajat Khandelwal <ra...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/41035/
-----------------------------------------------------------
(Updated Feb. 2, 2016, 7:23 p.m.)
Review request for lens.
Bugs: LENS-791
https://issues.apache.org/jira/browse/LENS-791
Repository: lens
Description
-------
fixing cli formatting
Diffs (updated)
-----
lens-api/pom.xml 1704b6264d40ed02cd566da52e6b5f27b9165a85
lens-api/src/main/java/org/apache/lens/api/APIResult.java f50d3ea153948cf7b64d4bda0bee9c490908c45a
lens-api/src/main/java/org/apache/lens/api/DateTime.java 3f89fdd17c7c1100a8b4e3f73c711ef67ad87e9f
lens-api/src/main/java/org/apache/lens/api/LensConf.java 67d6461e5039f1394b15428904c47fc8732ef4fd
lens-api/src/main/java/org/apache/lens/api/LensSessionHandle.java dc9142d37559546adce8e92631987d5f7042ab39
lens-api/src/main/java/org/apache/lens/api/ToXMLString.java PRE-CREATION
lens-api/src/main/java/org/apache/lens/api/ToYAMLString.java PRE-CREATION
lens-api/src/main/java/org/apache/lens/api/jaxb/LensJAXBContext.java 85a47ec5df069d7f7a0255c86570dd9a87c5b50f
lens-api/src/main/java/org/apache/lens/api/jaxb/YAMLToStringStrategy.java PRE-CREATION
lens-api/src/main/java/org/apache/lens/api/query/LensPreparedQuery.java f5bc35d38518b89894a385397c0bb6b39af0a474
lens-api/src/main/java/org/apache/lens/api/query/LensQuery.java 23c4decfe48fdfdb733beb100ad729468237c93c
lens-api/src/main/java/org/apache/lens/api/query/QueryStatus.java 915dac7ce3fc9e5f06eb802d8a3c88cc4237deea
lens-api/src/main/java/org/apache/lens/api/query/QuerySubmitResult.java f3fb6db20e71caefe9884a8a89e58bdefab9c0be
lens-api/src/test/java/org/apache/lens/api/jaxb/YAMLToStringStrategyTest.java PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.DateTime.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.DateTime.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.LensConf.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.LensConf.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.LensPreparedQuery.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.LensPreparedQuery.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.LensQuery.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.LensQuery.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandle.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandle.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandleWithResultSet.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryHandleWithResultSet.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPlan.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPlan.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPrepareHandle.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryPrepareHandle.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryStatus.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryStatus.yaml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.result.QueryCostTO.xml PRE-CREATION
lens-api/src/test/resources/toString/org.apache.lens.api.result.QueryCostTO.yaml PRE-CREATION
lens-cli/src/main/java/org/apache/lens/cli/commands/BaseLensCommand.java 66a6c4d4abfcb8d3a030e637232d81f4918bdb3f
lens-cli/src/main/java/org/apache/lens/cli/commands/LensCRUDCommand.java a0c05b41650cd8303879c6c370d892c544adf6ca
lens-cli/src/main/java/org/apache/lens/cli/commands/LensConnectionCommands.java 0aa51a8eeea2ad3e0b43d7f011c50b83b0ba30e4
lens-cli/src/main/java/org/apache/lens/cli/commands/LensDimensionCommands.java dc8349e322adcb031ef503850e012603f5865088
lens-cli/src/main/java/org/apache/lens/cli/commands/LensQueryCommands.java e2ac3afdd7c4000622c8b83546d99ecc1dd25ec4
lens-cli/src/main/java/org/apache/lens/cli/commands/LogicalTableCrudCommand.java a04d5c836a31b625e0efcd5509d999d6e483cbb6
lens-client/src/main/java/org/apache/lens/client/LensClient.java f7f99c7c20b97e9f2b53c39ee147d5cc682f93dc
lens-client/src/main/java/org/apache/lens/client/LensMetadataClient.java 07ce41ea720e92c6ae553d11026410840da5334a
lens-client/src/main/resources/lens-client-default.xml 1b7c9781e2c4221f9831eaefd6c0efa435c0a91e
lens-examples/pom.xml 0a5a744d1e376c22914c6fe73e80f9c069ed5ee6
lens-examples/src/main/java/org/apache/lens/examples/SampleMetastore.java b6385d47a7bde764698d7e79ca7f5d85e9c35cc5
lens-examples/src/main/resources/example-job.xml 93f36d4da711315d3bd6b7af230146fcd74ec237
lens-examples/src/test/java/org/apache/lens/examples/ExampleSchemaToStringTest.java PRE-CREATION
lens-examples/src/test/resources/yaml/city-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/city.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/city_subset.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/city_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/customer-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/customer.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/customer_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/db-storage.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim1-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim2-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim4-local-part.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim_table2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim_table3.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/dim_table4.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/example-job.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact1-local-part1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact1-local-part2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact1-local-part3.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact2-local-part1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact2-local-part2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact2-local-part3.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/fact2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/local-cluster-storage.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/local-storage.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/product-local-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/product.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/product_db_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/product_table.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part3.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part4.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part5.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/raw-local-part6.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/rawfact.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-continuous-fact.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact1-local-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact1-mydb-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact1.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact2-local-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact2-mydb-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-aggr-fact2.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-cube.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-raw-fact.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sales-raw-local-parts.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sample-cube.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sample-db-only-dimension.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sample-dimension.yaml PRE-CREATION
lens-examples/src/test/resources/yaml/sample-dimension2.yaml PRE-CREATION
pom.xml 349b71c9699575de853865461475e074168e411b
src/site/apt/user/client-config.apt 3d990a9a0e238fbf8924afd92a872bfd70765cd9
Diff: https://reviews.apache.org/r/41035/diff/
Testing
-------
```
Welcome to Lens Client
lens-shell>describe cube sales
properties:
cube.col.production_city_name.description: City name in which the product was produced
cube.measure.rating.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.customer_city_name.type: string
cube.col.profit.displaystring: Profit
cube.dimension.production_city_id.type: int
cube.dimension.customer_city_name.class: org.apache.lens.cube.metadata.ReferencedDimAtrribute
cube.dimension.production_city_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.measure.line_item_quantity.aggregate: SUM
cube.col.promotion_sales.cost: 0.0
cube.dimension.delivery_city_id.type: int
cube.timedim.partition.delivery_time: dt
cube.sales.joinchains.list0: customer_details,product_details,customer_city,delivery_city,production_city
base.sales.expressions.list.size: 1
cube.dimension.order_id.type: int
cube.measure.max_line_item_price.aggregate: MAX
transient_lastDdlTime: 1450698320
cube.measure.line_item_product_price.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.col.profit.type: double
cube.col.promotion_sales.expr: c3VtKGNhc2Ugd2hlbiBwcm9tb3Rpb25faWQgPSAwIHRoZW4gMCBlbHNlIHN0b3JlX3NhbGVzIGVu
ZCk=
:2015-04-11-18:|c3VtKGNhc2Ugd2hlbiBwcm9tb3Rpb25faWQgPSAtMSB0aGVuIDAgd2hlbiBwcm9tb3Rpb25faWQg
PSAtMSB0aGVuIDAgZWxzZSBzdG9yZV9zYWxlcyBlbmQp
::2015-04-11-18
cube.measure.line_item_tax.aggregate: SUM
cube.measure.line_item_tax.type: float
cube.col.delivery_city_name.description: City name to which the product was delivered
cube.measure.unit_sales.type: bigint
cube.measure.store_sales.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.measure.line_item_quantity.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.customer_city_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.production_city_name.chain.name: production_city
cube.dimension.delivery_city_name.class: org.apache.lens.cube.metadata.ReferencedDimAtrribute
cube.dimension.delivery_city_name.chain.name: delivery_city
cube.col.max_line_item_discount.displaystring: Maximum Line item discount
base.sales.expressions.list0: profit,promotion_sales
cube.dimension.production_country.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.customer_city_name.description: City name to which the customer belongs
cube.sales.timed.dimensions.list: order_time,delivery_time
cube.measure.line_item_product_price.type: float
cube.col.line_item_product_price.displaystring: Line item product price
cube.joinchain.customer_city.fullchain.1: sales.customer_id.false,customer.id.false,customer.city_id.false,city.id.false
cube.col.line_item_discount_amount.displaystring: Line item discount
cube.joinchain.customer_city.fullchain.0: sales.customer_city_id.false,city.id.false
cube.joinchain.customer_city.numchains: 2
cube.dimension.customer_city_id.type: int
cube.col.profit.expr.base64: true
cube.dimension.production_country.type: string
cube.dimension.customer_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.customer_id.type: int
cube.measure.max_line_item_price.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.delivery_city_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.store_cost.displaystring: Store Cost
cube.joinchain.customer_details.numchains: 1
cube.timedim.relation.order_time: delivery_time+[-20 days,-1 hour]
cube.table.sales.weight: 0.0
cube.dimension.product_id.type: int
cube.measure.line_item_quantity.type: int
cube.col.max_line_item_price.displaystring: Maximum Line item price
cube.dimension.customer_city_name.chain.column.name: name
cube.joinchain.delivery_city.numchains: 1
cube.col.customer_city_name.displaystring: Customer City
cube.measure.max_line_item_discount.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.order_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.customer_city_name.chain.name: customer_city
cube.sales.dimensions.list.size: 1
cube.joinchain.product_details.fullchain.0: sales.product_id.false,product.id.false
cube.dimension.production_state.type: string
cube.measure.max_line_item_price.type: float
cube.col.store_sales.displaystring: Store Sales
cube.col.delivery_city_name.displaystring: Delivery City
cube.table.type: CUBE
cube.col.promotion_sales.expr.base64: true
cube.col.store_cost.starttime: 2015-02-28-18
cube.dimension.production_state.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.unit_sales.displaystring: Unit Sales
cube.sales.measures.list0: unit_sales,store_sales,store_cost,line_item_quantity,line_item_product_price,line_item_discount_amount,line_item_tax,max_line_item_price,max_line_item_discount,rating
cube.col.production_state.displaystring: Production State
cube.dimension.order_time.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.measure.unit_sales.format: #,###
cube.col.line_item_tax.displaystring: Line item tax
cube.measure.max_line_item_discount.type: float
cube.dimension.product_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.measure.line_item_product_price.aggregate: SUM
cube.dimension.production_city_name.class: org.apache.lens.cube.metadata.ReferencedDimAtrribute
cube.col.production_country.description: Country name in which the product was produced
cube.col.production_city_name.displaystring: Production City
cube.measure.store_sales.format: #,###.##
cube.col.profit.expr: c3RvcmVfc2FsZXMgLSBzdG9yZV9jb3N0
::
cube.dimension.delivery_time.type: timestamp
cube.measure.rating.type: float
cube.measure.line_item_tax.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.measure.unit_sales.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.sales.joinchains.list.size: 1
cube.joinchain.customer_details.fullchain.0: sales.customer_id.false,customer.id.false
cube.col.customer_city_id.starttime: 2015-02-28-18
cube.joinchain.production_city.numchains: 1
cube.sales.dimensions.list0: customer_id,product_id,promotion_id,order_id,order_line_number,order_time,delivery_time,customer_city_id,production_city_id,delivery_city_id,customer_city_name,production_location,delivery_city_name
cube.measure.store_cost.type: double
cube.dimension.production_city_name.chain.column.name: name
cube.measure.store_sales.aggregate: SUM
cube.joinchain.product_details.numchains: 1
cube.measure.rating.aggregate: AVG
cube.dimension.order_line_number.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.promotion_sales.type: double
cube.dimension.order_line_number.type: int
cube.dimension.production_location.hierarchy.2: production_country,org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.delivery_city_name.type: string
cube.dimension.production_location.hierarchy.1: production_state,org.apache.lens.cube.metadata.BaseDimAttribute
cube.dimension.production_location.hierarchy.0: production_city_name,org.apache.lens.cube.metadata.ReferencedDimAtrribute
cube.dimension.delivery_city_name.chain.column.name: name
cube.joinchain.delivery_city.fullchain.0: sales.delivery_city_id.false,city.id.false
cube.measure.store_sales.type: double
cube.measure.line_item_discount_amount.aggregate: SUM
cube.dimension.promotion_id.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.col.production_country.displaystring: Production Country
cube.col.profit.cost: 0.0
cube.measure.line_item_discount_amount.type: float
cube.measure.unit_sales.aggregate: SUM
cube.sales.measures.list.size: 1
cube.dimension.production_location.class: org.apache.lens.cube.metadata.HierarchicalDimAttribute
cube.dimension.promotion_id.type: int
cube.measure.max_line_item_discount.aggregate: MAX
cube.measure.line_item_discount_amount.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.dimension.delivery_time.class: org.apache.lens.cube.metadata.BaseDimAttribute
cube.measure.store_cost.aggregate: SUM
cube.col.rating.displaystring: Rating
cube.measure.store_cost.class: org.apache.lens.cube.metadata.ColumnMeasure
cube.col.production_state.description: State name in which the product was produced
cube.col.promotion_sales.displaystring: Promotion sales
cube.joinchain.production_city.fullchain.0: sales.production_city_id.false,city.id.false
cube.dimension.order_time.type: timestamp
cube.col.line_item_quantity.displaystring: Line item quantity
cube.timedim.partition.order_time: ot
cube.measure.store_cost.format: #,###.00
cube.dimension.production_city_name.type: string
name: sales
measures:
rating:
displayString: Rating
type: FLOAT
defaultAggr: AVG
line_item_quantity:
displayString: Line item quantity
type: INT
defaultAggr: SUM
store_sales:
displayString: Store Sales
type: DOUBLE
defaultAggr: SUM
formatString: #,###.##
unit_sales:
displayString: Unit Sales
type: BIGINT
defaultAggr: SUM
formatString: #,###
line_item_tax:
displayString: Line item tax
type: FLOAT
defaultAggr: SUM
max_line_item_discount:
displayString: Maximum Line item discount
type: FLOAT
defaultAggr: MAX
store_cost:
displayString: Store Cost
type: DOUBLE
defaultAggr: SUM
formatString: #,###.00
startTime: 2015-02-28T23:30:00.000+05:30
max_line_item_price:
displayString: Maximum Line item price
type: FLOAT
defaultAggr: MAX
line_item_discount_amount:
displayString: Line item discount
type: FLOAT
defaultAggr: SUM
line_item_product_price:
displayString: Line item product price
type: FLOAT
defaultAggr: SUM
dimAttributes:
production_location:
hierarchy:
production_city_name:
displayString: Production City
description: City name in which the product was produced
refSpec:
chainRefColumn:
-
chainName: production_city
refCol: name
destTable: city
type: string
joinKey: false
production_state:
displayString: Production State
description: State name in which the product was produced
type: string
joinKey: false
production_country:
displayString: Production Country
description: Country name in which the product was produced
type: string
joinKey: false
joinKey: false
customer_city_name:
displayString: Customer City
description: City name to which the customer belongs
refSpec:
chainRefColumn:
-
chainName: customer_city
refCol: name
destTable: city
type: string
joinKey: false
production_city_id:
type: int
joinKey: false
product_id:
type: int
joinKey: false
order_id:
type: int
joinKey: false
delivery_city_id:
type: int
joinKey: false
delivery_time:
type: timestamp
joinKey: false
order_time:
type: timestamp
joinKey: false
order_line_number:
type: int
joinKey: false
customer_city_id:
type: int
startTime: 2015-02-28T23:30:00.000+05:30
joinKey: false
promotion_id:
type: int
joinKey: false
delivery_city_name:
displayString: Delivery City
description: City name to which the product was delivered
refSpec:
chainRefColumn:
-
chainName: delivery_city
refCol: name
destTable: city
type: string
joinKey: false
customer_id:
type: int
joinKey: false
expressions:
profit:
displayString: Profit
exprSpec:
-
expr: store_sales - store_cost
type: double
promotion_sales:
displayString: Promotion sales
exprSpec:
-
expr: sum(case when promotion_id = 0 then 0 else store_sales end)
startTime: 2015-04-11T23:30:00.000+05:30
-
expr: sum(case when promotion_id = -1 then 0 when promotion_id = -1 then 0 else store_sales end)
endTime: 2015-04-11T23:30:00.000+05:30
type: double
joinChains:
product_details:
paths:
-
sales.product_id=product.id
destTable: product
production_city:
paths:
-
sales.production_city_id=city.id
destTable: city
customer_details:
paths:
-
sales.customer_id=customer.id
destTable: customer
delivery_city:
paths:
-
sales.delivery_city_id=city.id
destTable: city
customer_city:
paths:
-
sales.customer_city_id=city.id
-
sales.customer_id=customer.id
customer.city_id=city.id
destTable: city
```
```
lens-shell>query details
queryHandle: a186be92-fc1f-4509-9c8b-6ce6f1f7bdbb
userQuery: cube select measure2 from sample_cube where time_range_in(dt, '2014-06-24-23', '2014-06-25-00')
submittedUser: anonymous
priority: VERY_HIGH
isPersistent: false
selectedDriverName: hive/hive1
driverQuery: INSERT OVERWRITE DIRECTORY "file:/tmp/lensreports/hdfsout/a186be92-fc1f-4509-9c8b-6ce6f1f7bdbb" SELECT sum(( sample_cube . measure2 )) FROM local_fact1 sample_cube WHERE (((( sample_cube . dt ) = '2014-06-24-23' )))
status:
Status : SUCCESSFUL
Message : Query is successful!
Progress : 1.0
Result Available
driverOpHandle: OperationHandle [opType=EXECUTE_STATEMENT, getHandleIdentifier()=1da0e13e-eb67-484b-931f-1ca5584ac030]
submissionTime: 1452083135606
launchTime: 1452083141739
driverStartTime: 1452083139777
driverFinishTime: 1452083149324
finishTime: 1452083149336
closedTime: 0
lens-shell>
```
Thanks,
Rajat Khandelwal