[jira] [Created] (ARROW-13305) [C++] Unable to install nightly on Ubuntu 21.04 due to day of week options

2021-07-11 Thread Jira
Mauricio 'Pachá' Vargas Sepúlveda created ARROW-13305:
-

 Summary: [C++] Unable to install nightly on Ubuntu 21.04 due to 
day of week options
 Key: ARROW-13305
 URL: https://issues.apache.org/jira/browse/ARROW-13305
 Project: Apache Arrow
  Issue Type: Bug
  Components: C++
Affects Versions: 4.0.1
Reporter: Mauricio 'Pachá' Vargas Sepúlveda
 Fix For: 5.0.0


Related to ARROW-13304

Another error seen on Ubuntu 21.04 is
{code:java}
dataset.cpp:284:31: error: ‘CsvFileWriteOptions’ is not a member of ‘ds’; did 
you mean ‘IpcFileWriteOptions’?
  284 | const std::shared_ptr& csv_options,
  |   ^~~
  |   IpcFileWriteOptions
dataset.cpp:284:50: error: template argument 1 is invalid
  284 | const std::shared_ptr& csv_options,
  |  ^
dataset.cpp: In function ‘void dataset___CsvFileWriteOptions__update(const 
int&, const std::shared_ptr&)’:
dataset.cpp:286:15: error: base operand of ‘->’ is not a pointer
  286 |   *csv_options->write_options = *write_options; {code}
 

I fetched the last changes up to 91f26

 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (ARROW-13304) [C++] Unable to install nightly on Ubuntu 21.04 due to day of week options

2021-07-11 Thread Jira
Mauricio 'Pachá' Vargas Sepúlveda created ARROW-13304:
-

 Summary: [C++] Unable to install nightly on Ubuntu 21.04 due to 
day of week options
 Key: ARROW-13304
 URL: https://issues.apache.org/jira/browse/ARROW-13304
 Project: Apache Arrow
  Issue Type: Bug
  Components: C++
Affects Versions: 4.0.1
 Environment: Ubuntu 21.04
Reporter: Mauricio 'Pachá' Vargas Sepúlveda
 Fix For: 5.0.0


I see this errors after fetching from apache/arrow now:

 
{code:java}
compute.cpp: In function ‘std::shared_ptr 
make_compute_options(std::string, cpp11::list)’: compute.cpp:268:37: error: 
‘DayOfWeekOptions’ in namespace ‘arrow::compute’ does not name a type 268 | 
using Options = arrow::compute::DayOfWeekOptions; | ^~~~ {code}
 

Some possible merged PR that might cause this is 
[https://github.com/apache/arrow/commit/fdd7d32bcbc4086242e6a3517ef49e4f4468bd56]
 (ARROW-13054)

 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (ARROW-13303) [JS] Revise bundles

2021-07-11 Thread Dominik Moritz (Jira)
Dominik Moritz created ARROW-13303:
--

 Summary: [JS] Revise bundles
 Key: ARROW-13303
 URL: https://issues.apache.org/jira/browse/ARROW-13303
 Project: Apache Arrow
  Issue Type: Improvement
  Components: JavaScript
Reporter: Dominik Moritz


* Use es2015 sources in the apache-arrow package since webpack 4 does not 
support esnext and many people still use it
* Generate .cjs and .mjs files instead of just .js to make it clear what the 
files are. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (ARROW-13302) Fix elementwise comparison to avoid future error

2021-07-11 Thread Jira
Mauricio 'Pachá' Vargas Sepúlveda created ARROW-13302:
-

 Summary: Fix elementwise comparison to avoid future error
 Key: ARROW-13302
 URL: https://issues.apache.org/jira/browse/ARROW-13302
 Project: Apache Arrow
  Issue Type: Bug
  Components: Python
Affects Versions: 4.0.1
Reporter: Mauricio 'Pachá' Vargas Sepúlveda
 Fix For: 6.0.0


test-conda-python-3.7-pandas-0.24: shows this deprecation warning
{code:java}
  
/opt/conda/envs/arrow/lib/python3.7/site-packages/pandas/core/dtypes/missing.py:415:
 DeprecationWarning: elementwise comparison failed; this will raise an error in 
the future.
if left_value != right_value:
 {code}
https://github.com/ursacomputing/crossbow/runs/3016079666#step:7:7783



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (ARROW-13301) BaseListBuilder constructor should check the provided type is a list

2021-07-11 Thread &res (Jira)
&res created ARROW-13301:


 Summary: BaseListBuilder constructor should check the provided 
type is a list 
 Key: ARROW-13301
 URL: https://issues.apache.org/jira/browse/ARROW-13301
 Project: Apache Arrow
  Issue Type: Improvement
  Components: C++
Affects Versions: 4.0.1
Reporter: &res


I've noticed that I can create a ListBuilder with a type that is not a ListType 
(in particular a StructType). 

I'm talking about the following constructor:
{code:java}
BaseListBuilder(MemoryPool* pool, std::shared_ptr const& 
value_builder,
  const std::shared_ptr& type)
 {code}

I think this constructor should enforce that the given type is a ListType. 
It could also possibly enforce that the type of the elements of the given 
ListType match the element of the value_build. 
Alternatively that constructor could be made private (since 
`BaseListBuilder(MemoryPool* pool, std::shared_ptr const& 
value_builder)` should be enough for most use case).


Here's an example where I'm trying to create a "ListType(list>)".

When I create the ListBuilder I've noticed that I works with type set to:
# ListType(list>) 
# StructType(struct)

In the first case the underlying type is: ListType(list>)

But in the second type the underlying type is ListType(list>). The subtle difference is that 
the ListType field name has been changed from item to the name of the first 
element of the list (return_code).

I  think it's because BaseListBuilder uses `type->field(0)` to get the name of 
the list field, but it uses `value_builder_->type()` to get the type.

See: 

{code:c++}
  BaseListBuilder(MemoryPool* pool, std::shared_ptr const& 
value_builder,
  const std::shared_ptr& type)
  : ArrayBuilder(pool),
offsets_builder_(pool),
value_builder_(value_builder),
value_field_(type->field(0)->WithType(NULLPTR)) {}
// ...
std::shared_ptr type() const override {
return 
std::make_shared(value_field_->WithType(value_builder_->type()));
  }

{code}

Here's an example that reproduce the issue:

{code}


BOOST_AUTO_TEST_CASE(IsThereABugWithArrays) {
  const arrow::FieldVector fields = {
  arrow::field("return_code", arrow::int32()),
  arrow::field("message", arrow::utf8())};

  const std::shared_ptr struct_data_type =
  arrow::struct_(fields);
  const std::shared_ptr list_of_struct_data_type =
  arrow::list(struct_data_type);

  const std::shared_ptr schema =
  arrow::schema({arrow::field("search_results", list_of_struct_data_type)});

  arrow::MemoryPool *pool = arrow::default_memory_pool();

  std::shared_ptr return_code_builder =
  std::make_shared(pool);
  std::shared_ptr message_builder =
  std::make_shared(pool);
  std::vector> struct_fields_builders = {
  return_code_builder, message_builder};


  std::shared_ptr struct_builder =
  std::make_shared(
  struct_data_type, pool, struct_fields_builders);
  std::shared_ptr list_builder(
  std::make_shared(
  pool, struct_builder, list_of_struct_data_type));

  BOOST_REQUIRE(list_builder->type()->Equals(list_of_struct_data_type));

  // This should not be allowed:
  std::shared_ptr list_builder_using_struct_dtype(
  std::make_shared(
  pool, struct_builder, struct_data_type));

  std::shared_ptr wrong_data_type = 
std::make_shared (
  arrow::field("return_code", struct_data_type)
  );

  
BOOST_REQUIRE(!list_builder_using_struct_dtype->type()->Equals(list_of_struct_data_type));
  
BOOST_REQUIRE(list_builder_using_struct_dtype->type()->Equals(wrong_data_type));

}
{code}









--
This message was sent by Atlassian Jira
(v8.3.4#803005)