Skip to content

Conversation

@dchigarev
Copy link
Collaborator

@dchigarev dchigarev commented Jul 4, 2020

What do these changes do?

Implementation of pandas.DataFrame.melt + apply_full_axis_select_indices optimization.

@codecov
Copy link

codecov bot commented Jul 4, 2020

Codecov Report

Merging #1689 into master will decrease coverage by 0.57%.
The diff coverage is 89.47%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #1689      +/-   ##
==========================================
- Coverage   82.32%   81.75%   -0.58%     
==========================================
  Files          77       77              
  Lines        8189     8867     +678     
==========================================
+ Hits         6742     7249     +507     
- Misses       1447     1618     +171     
Impacted Files Coverage Δ
modin/pandas/dataframe.py 80.19% <66.66%> (-8.89%) ⬇️
modin/engines/base/frame/data.py 93.41% <76.00%> (-0.89%) ⬇️
modin/engines/base/frame/partition_manager.py 88.58% <88.88%> (+1.16%) ⬆️
modin/backends/base/query_compiler.py 100.00% <100.00%> (ø)
modin/backends/pandas/query_compiler.py 95.83% <100.00%> (+0.77%) ⬆️
modin/error_message.py 92.59% <100.00%> (+1.68%) ⬆️
modin/pandas/indexing.py 84.68% <100.00%> (+0.29%) ⬆️
modin/pandas/iterator.py 80.95% <0.00%> (-19.05%) ⬇️
modin/pandas/series.py 79.49% <0.00%> (-12.36%) ⬇️
... and 10 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 86e1a4e...040e815. Read the comment docs.

@modin-bot
Copy link

modin-bot commented Jul 4, 2020

TeamCity Python test results bot

Tests PASSed

Tests Logs
============================= test session starts ==============================
platform linux -- Python 3.7.7, pytest-5.4.3, py-1.8.1, pluggy-0.13.1
rootdir: /modin, inifile: setup.cfg
plugins: openfiles-0.5.0, remotedata-0.3.2, cov-2.10.0, custom-exit-code-0.3.0, forked-1.2.0, testmon-1.0.2, xdist-1.33.0
collected 94 items

modin/pandas/test/test_io.py .................sX..........s............. [ 45%]
....s..............s..s.X.....s.................ss.                      [100%]

----------- coverage: platform linux, python 3.7.7-final-0 -----------
Name                                                               Stmts   Miss  Cover
--------------------------------------------------------------------------------------
modin/__init__.py                                                     76     38    50%
modin/_version.py                                                    272    172    37%
modin/apply_license_header.py                                         19     19     0%
modin/backends/__init__.py                                             0      0   100%
modin/backends/base/__init__.py                                        0      0   100%
modin/backends/base/query_compiler.py                                130      1    99%
modin/backends/pandas/__init__.py                                      0      0   100%
modin/backends/pandas/parsers.py                                     207    175    15%
modin/backends/pandas/query_compiler.py                              841    515    39%
modin/data_management/__init__.py                                      0      0   100%
modin/data_management/dispatcher.py                                   78     16    79%
modin/data_management/factories.py                                    85     26    69%
modin/data_management/functions/__init__.py                            7      0   100%
modin/data_management/functions/binary_function.py                    21     14    33%
modin/data_management/functions/foldfunction.py                        6      1    83%
modin/data_management/functions/function.py                            6      1    83%
modin/data_management/functions/groupby_function.py                   50     44    12%
modin/data_management/functions/mapfunction.py                         6      1    83%
modin/data_management/functions/mapreducefunction.py                   9      2    78%
modin/data_management/functions/reductionfunction.py                   6      1    83%
modin/data_management/utils.py                                        32     12    62%
modin/engines/__init__.py                                              0      0   100%
modin/engines/base/__init__.py                                         0      0   100%
modin/engines/base/frame/__init__.py                                   0      0   100%
modin/engines/base/frame/axis_partition.py                            45     20    56%
modin/engines/base/frame/data.py                                     516    347    33%
modin/engines/base/frame/partition.py                                  1      0   100%
modin/engines/base/frame/partition_manager.py                        184    108    41%
modin/engines/base/io/__init__.py                                     12      0   100%
modin/engines/base/io/column_stores/__init__.py                        0      0   100%
modin/engines/base/io/column_stores/column_store_reader.py            40     29    28%
modin/engines/base/io/column_stores/feather_reader.py                  9      5    44%
modin/engines/base/io/column_stores/hdf_reader.py                      3      0   100%
modin/engines/base/io/column_stores/parquet_reader.py                 34     29    15%
modin/engines/base/io/file_reader.py                                  85     66    22%
modin/engines/base/io/io.py                                          110      6    95%
modin/engines/base/io/sql/__init__.py                                  0      0   100%
modin/engines/base/io/sql/sql_reader.py                               39     31    21%
modin/engines/base/io/text/__init__.py                                 0      0   100%
modin/engines/base/io/text/csv_reader.py                             112    105     6%
modin/engines/base/io/text/excel_reader.py                           106     97     8%
modin/engines/base/io/text/fwf_reader.py                             115    108     6%
modin/engines/base/io/text/json_reader.py                             50     43    14%
modin/engines/base/io/text/text_file_reader.py                        34     24    29%
modin/engines/base/series/__init__.py                                  0      0   100%
modin/engines/dask/__init__.py                                         0      0   100%
modin/engines/dask/pandas_on_dask/__init__.py                          0      0   100%
modin/engines/dask/pandas_on_dask/frame/__init__.py                    0      0   100%
modin/engines/dask/pandas_on_dask/frame/axis_partition.py             27     27     0%
modin/engines/dask/pandas_on_dask/frame/data.py                       15     15     0%
modin/engines/dask/pandas_on_dask/frame/partition.py                  75     75     0%
modin/engines/dask/pandas_on_dask/frame/partition_manager.py          44     44     0%
modin/engines/dask/pandas_on_dask/io.py                               17     17     0%
modin/engines/dask/pandas_on_dask/series/__init__.py                   0      0   100%
modin/engines/dask/task_wrapper.py                                     9      9     0%
modin/engines/python/__init__.py                                       0      0   100%
modin/engines/python/pandas_on_python/__init__.py                      0      0   100%
modin/engines/python/pandas_on_python/frame/__init__.py                0      0   100%
modin/engines/python/pandas_on_python/frame/axis_partition.py         14      0   100%
modin/engines/python/pandas_on_python/frame/data.py                    4      0   100%
modin/engines/python/pandas_on_python/frame/partition.py              65      6    91%
modin/engines/python/pandas_on_python/frame/partition_manager.py       7      0   100%
modin/engines/python/pandas_on_python/io.py                            6      0   100%
modin/engines/python/pandas_on_python/series/__init__.py               0      0   100%
modin/engines/ray/__init__.py                                          0      0   100%
modin/engines/ray/generic/__init__.py                                  0      0   100%
modin/engines/ray/generic/frame/__init__.py                            0      0   100%
modin/engines/ray/generic/frame/partition_manager.py                  10     10     0%
modin/engines/ray/generic/io.py                                       14     14     0%
modin/engines/ray/generic/series/__init__.py                           0      0   100%
modin/engines/ray/pandas_on_ray/__init__.py                            0      0   100%
modin/engines/ray/pandas_on_ray/frame/__init__.py                      0      0   100%
modin/engines/ray/pandas_on_ray/frame/axis_partition.py               22     22     0%
modin/engines/ray/pandas_on_ray/frame/data.py                         11     11     0%
modin/engines/ray/pandas_on_ray/frame/partition.py                    86     86     0%
modin/engines/ray/pandas_on_ray/frame/partition_manager.py            43     43     0%
modin/engines/ray/pandas_on_ray/io.py                                 18     18     0%
modin/engines/ray/pandas_on_ray/series/__init__.py                     0      0   100%
modin/engines/ray/task_wrapper.py                                      7      7     0%
modin/engines/ray/utils.py                                            52     52     0%
modin/error_message.py                                                27      8    70%
modin/experimental/__init__.py                                         0      0   100%
modin/experimental/cloud/__init__.py                                   6      6     0%
modin/experimental/cloud/base.py                                      36     36     0%
modin/experimental/cloud/cluster.py                                   90     90     0%
modin/experimental/cloud/connection.py                                98     98     0%
modin/experimental/cloud/rayscale.py                                 107    107     0%
modin/experimental/engines/__init__.py                                 0      0   100%
modin/experimental/engines/pandas_on_ray/__init__.py                   0      0   100%
modin/experimental/engines/pandas_on_ray/io_exp.py                    38     38     0%
modin/experimental/engines/pandas_on_ray/sql.py                       66     66     0%
modin/experimental/pandas/__init__.py                                  6      6     0%
modin/experimental/pandas/io_exp.py                                    7      7     0%
modin/pandas/__init__.py                                              38      7    82%
modin/pandas/base.py                                                1213    916    24%
modin/pandas/concat.py                                                58     48    17%
modin/pandas/dataframe.py                                            870    675    22%
modin/pandas/datetimes.py                                              7      3    57%
modin/pandas/general.py                                               53     35    34%
modin/pandas/groupby.py                                              291    201    31%
modin/pandas/indexing.py                                             209    209     0%
modin/pandas/io.py                                                   147     11    93%
modin/pandas/iterator.py                                              17     11    35%
modin/pandas/reshape.py                                               30     20    33%
modin/pandas/series.py                                               945    625    34%
modin/pandas/utils.py                                                 28      3    89%
--------------------------------------------------------------------------------------
TOTAL                                                               8279   5738    31%


=========== 84 passed, 8 skipped, 2 xpassed, 146 warnings in 39.85s ============
Closing remaining open files:test_write_modin.hdf...donetest_write_pandas.hdf...done
============================= test session starts ==============================
platform linux -- Python 3.7.7, pytest-5.4.3, py-1.8.1, pluggy-0.13.1
rootdir: /modin, inifile: setup.cfg
plugins: openfiles-0.5.0, remotedata-0.3.2, cov-2.10.0, custom-exit-code-0.3.0, forked-1.2.0, testmon-1.0.2, xdist-1.33.0
gw0 I / gw1 I / gw2 I / gw3 I / gw4 I / gw5 I / gw6 I / gw7 I / gw8 I / gw9 I / gw10 I / gw11 I / gw12 I / gw13 I / gw14 I / gw15 I / gw16 I / gw17 I / gw18 I / gw19 I / gw20 I / gw21 I / gw22 I / gw23 I / gw24 I / gw25 I / gw26 I / gw27 I / gw28 I / gw29 I / gw30 I / gw31 I / gw32 I / gw33 I / gw34 I / gw35 I / gw36 I / gw37 I / gw38 I / gw39 I / gw40 I / gw41 I / gw42 I / gw43 I / gw44 I / gw45 I / gw46 I / gw47 I
gw0 [19027] / gw1 [19027] / gw2 [19027] / gw3 [19027] / gw4 [19027] / gw5 [19027] / gw6 [19027] / gw7 [19027] / gw8 [19027] / gw9 [19027] / gw10 [19027] / gw11 [19027] / gw12 [19027] / gw13 [19027] / gw14 [19027] / gw15 [19027] / gw16 [19027] / gw17 [19027] / gw18 [19027] / gw19 [19027] / gw20 [19027] / gw21 [19027] / gw22 [19027] / gw23 [19027] / gw24 [19027] / gw25 [19027] / gw26 [19027] / gw27 [19027] / gw28 [19027] / gw29 [19027] / gw30 [19027] / gw31 [19027] / gw32 [19027] / gw33 [19027] / gw34 [19027] / gw35 [19027] / gw36 [19027] / gw37 [19027] / gw38 [19027] / gw39 [19027] / gw40 [19027] / gw41 [19027] / gw42 [19027] / gw43 [19027] / gw44 [19027] / gw45 [19027] / gw46 [19027] / gw47 [19027]

........................................................................ [  0%]
........................................................................ [  0%]
........................................................................ [  1%]
........................................................................ [  1%]
........................................................................ [  1%]
...............s........................................................ [  2%]
........................................................................ [  2%]
........................................................................ [  3%]
........................................................................ [  3%]
.................s........................X.....................X....... [  3%]
....X...X.....X..X..............X..x...X...X...Xx.........X...X..x...X.. [  4%]
x...X.....XX..X....X..X...X....Xx....X........Xx...xXX.X.X...X......x.X. [  4%]
X.Xx..X...X......x.XXXX.........X..X.X.....X........X.XxX.....X......... [  4%]
..X..XX........x.....X.....x..X...X.X..X....X....X..XX...Xx.........X... [  5%]
X.............xX.X.X....X.xXX.X.....X........X..X.X.........X..x.x..XX.. [  5%]
.........X.......X...X.X..s.XX......X...X...........XX....x....X...X.... [  6%]
.....X..X......X............X..X..X..X......X...........X..X.........X.. [  6%]
............X...............X............X........X...X................. [  6%]
..............X...X.....X.....X..................xX.X....X......x....... [  7%]
....X.............X....XXX..X..............x..X..X....XX...X........X.X. [  7%]
.X....xX..x.....Xx.X..x..xXXX...XXX..X.....XX..xX...X...xxXXX.......X.XX [  7%]
.X..X..XX.xXX.....X...XX.....XXX.X.....XXX.XX....x.........X.XxX.X.XXX.. [  8%]
x.....XXXXX..X.xXX....X.x.........XX..xX....XX.X.Xxx.X..X..X.x....X.X.XX [  8%]
X.....x..XXx..XxXXX...XX.XX.XXX...XX.X...X...XX...x.XxX..X.XX.XX.X.XX..X [  9%]
.XXX.X.xX.......X.....X..XX..XX.x..X...X......XX.XX..XX..XX.XXX....X.X.. [  9%]
.X.X.X............X.X.XX.......XX....XXX......X.....X......X.X......X... [  9%]
X.X.....x...X.X...X.......X.....XX..X........X..X...XX...X........X.X... [ 10%]
..X.....X.....X......X........xX..X.X.X............XX.....X.X.XX........ [ 10%]
....X.................XX......X.x.......X..............X..........X....X [ 10%]
.....X..XX..X................X........X...XX.X.X....X............X.X...X [ 11%]
...X.X..........X..X......X.X..X..XX..X.x............X......xX.......X.. [ 11%]
.........X.XxX...X..X.......x..X..X..X...XXX........X...XX.X.x...XX..XX. [ 12%]
....x..XX............XXX.......X...XX....X......X.X..X........x.....X... [ 12%]
..X.X.....XXX....X.x...........X.XX...XX....X..........XX.X...X...X..X.. [ 12%]
..X......XX..............................X.x.X...X..........X.........XX [ 13%]
...x..xX......X........X......X.......XX....X.X.X.....X......X.....xXX.. [ 13%]
.xX....................xX..X..X.Xx.X.....X.......X.........XX.X..X..XX... [ 14%]
.......X.....X..X.X....X..x..XX.......X....X.......xX..X.X......X..XX.X. [ 14%]
......X....X.X..........X.X............X.....X..........x........X.....X [ 14%]
....X..............X......x................X............................ [ 15%]
.................................................x...................... [ 15%]
.........x.............................................................. [ 15%]
...............................s........................................ [ 16%]
........................................................................ [ 16%]
...........................x...............................x............ [ 17%]
........................................................................ [ 17%]
...x............................................................x....... [ 17%]
.................................X....................................s. [ 18%]
.......X...........................X...........................X.......x [ 18%]
............................x...........X............................... [ 18%]
........................................................................ [ 19%]
..................x..................................................... [ 19%]
............x........................................................... [ 20%]
.........................x.............................................. [ 20%]
........................................................x............... [ 20%]
........................................................................ [ 21%]
........................................................................ [ 21%]
........................................................................ [ 21%]
.........................................x......................X....... [ 22%]
.................................X...................................... [ 22%]
...........................................................X............ [ 23%]
....................X................................X.................. [ 23%]
............................x........................................... [ 23%]
........................................................................ [ 24%]
........................................................................ [ 24%]
........................................................................ [ 24%]
........................................................................ [ 25%]
........................................................................ [ 25%]
........................................................................ [ 26%]
........................................................................ [ 26%]
........................................................................ [ 26%]
......................................................................... [ 27%]
........................................................................ [ 27%]
........................................................................ [ 28%]
........................................................................ [ 28%]
........................................................................ [ 28%]
........................................................X..........x.... [ 29%]
.........X........X..................X.............X.................X.. [ 29%]
................................x.....................X............X.... [ 29%]
..........X.............X...............X.....................x......... [ 30%]
..........X.................X....................X...................... [ 30%]
X..............x........X..x.........X....X............X....X........... [ 31%]
.........x....X.X................X...X.X......X.....X.........X...X..... [ 31%]
..........xX...........XX............................X.................. [ 31%]
...X..................X......................X.......................... [ 32%]
....x........................X...........................X.............. [ 32%]
.....X...............X............X.........x...............X........... [ 32%]
..xX............XX................X.......X.....X........X.........X.... [ 33%]
.........X.............................................................. [ 33%]
................sssssssssss............................................. [ 34%]
........................................................................ [ 34%]
........................................................................ [ 34%]
........................................................................ [ 35%]
........................................................................ [ 35%]
................................................s....................... [ 35%]
........................................................................ [ 36%]
........................................................................ [ 36%]
........................................................................ [ 37%]
........................................................................ [ 37%]
........................................................................ [ 37%]
........................................................................ [ 38%]
........................................................................ [ 38%]
.................................................X...X.....X.....X.....X [ 38%]
........X............................................................... [ 39%]
........................................................................ [ 39%]
........................................................................ [ 40%]
......................................................................... [ 40%]
........................................................................ [ 40%]
........................................................................ [ 41%]
........................................................................ [ 41%]
........................................................................ [ 42%]
......................................................................... [ 42%]
........................................................................ [ 42%]
........................................................................ [ 43%]
......................................................................... [ 43%]
........................................................................ [ 43%]
........................................................................ [ 44%]
........................................................................ [ 44%]
........................................................................ [ 45%]
........................................................................ [ 45%]
........................................................................ [ 45%]
........................................................................ [ 46%]
........................................................................ [ 46%]
......................................................................... [ 46%]
........................................................................ [ 47%]
........................................................................ [ 47%]
........................................................................ [ 48%]
........................................................................ [ 48%]
........................................................................ [ 48%]
........................................................................ [ 49%]
........................................................................ [ 49%]
........................................................................ [ 49%]
......................................................................... [ 50%]
........................................................................ [ 50%]
........................................................................ [ 51%]
........................................................................ [ 51%]
........................................................................ [ 51%]
........................................................................ [ 52%]
........................................................................ [ 52%]
........................................................................ [ 53%]
........................................................................ [ 53%]
........................................................................ [ 53%]
.................sss.ssss............................................... [ 54%]
........................................................................ [ 54%]
........................................................................ [ 54%]
........................................................................ [ 55%]
........................................................................ [ 55%]
........................................................................ [ 56%]
........................................................................ [ 56%]
........................................................................ [ 56%]
........................................................................ [ 57%]
.......................................................................... [ 57%]
........................................................................ [ 57%]
........................................................................ [ 58%]
........................................................................ [ 58%]
........................................................................ [ 59%]
........................................................................ [ 59%]
........................................................................ [ 59%]
........................................................................ [ 60%]
........................................................................ [ 60%]
......................................................................... [ 60%]
........................................................................ [ 61%]
........................................................................ [ 61%]
........................................................................ [ 62%]
........................................................................ [ 62%]
........................................................................ [ 62%]
........................................................................ [ 63%]
........................................................................ [ 63%]
........................................................................ [ 64%]
......................................................................... [ 64%]
........................................................................ [ 64%]
........................................................................ [ 65%]
........................................................................ [ 65%]
........................................................................ [ 65%]
........................................................................ [ 66%]
........................................................................ [ 66%]
........................................................................ [ 67%]
........................................................................ [ 67%]
........................................................................ [ 67%]
........................................................................ [ 68%]
........................................................................ [ 68%]
........................................................................ [ 68%]
........................................................................ [ 69%]
........................................................................ [ 69%]
........................................................................ [ 70%]
........................................................................ [ 70%]
........................................................................ [ 70%]
........................................................................ [ 71%]
........................................................................ [ 71%]
........................................................................ [ 71%]
........................................................................ [ 72%]
........................................................................ [ 72%]
........................................................................ [ 73%]
........................................................................ [ 73%]
........................................................................ [ 73%]
........................................................................ [ 74%]
......................................................................... [ 74%]
........................................................................ [ 74%]
........................................................................ [ 75%]
........................................................................ [ 75%]
........................................................................ [ 76%]
........................................................................ [ 76%]
........................................................................ [ 76%]
........................................................................ [ 77%]
........................................................................ [ 77%]
........................................................................ [ 78%]
......................................................................... [ 78%]
........................................................................ [ 78%]
........................................................................ [ 79%]
........................................................................ [ 79%]
........................................................................ [ 79%]
........................................................................ [ 80%]
........................................................................ [ 80%]
........................................................................ [ 81%]
........................................................................ [ 81%]
........................................................................ [ 81%]
........................................................................ [ 82%]
........................................................................ [ 82%]
........................................................................ [ 82%]
........................................................................ [ 83%]
........................................................................ [ 83%]
........................................................................ [ 84%]
........................................................................ [ 84%]
........................................................................ [ 84%]
........................................................................ [ 85%]
......................................................................... [ 85%]
........................................................................ [ 85%]
........................................................................ [ 86%]
........................................................................ [ 86%]
........................................................................ [ 87%]
........................................................................ [ 87%]
......................................................................... [ 87%]
........................................................................ [ 88%]
......................................................................... [ 88%]
........................................................................ [ 89%]
........................................................................ [ 89%]
........................................................................ [ 89%]
........................................................................ [ 90%]
........................................................................ [ 90%]
.......................................................................... [ 90%]
....................s..ss............................................... [ 91%]
...............................................................ss....... [ 91%]
..........................s..............s....................x..xX..... [ 92%]
......X....X........X.......x......x..................................... [ 92%]
........................................................................ [ 92%]
......................................................................... [ 93%]
........................................................................ [ 93%]
........................................................................ [ 93%]
........................................................................ [ 94%]
........................................................................ [ 94%]
........................................................................ [ 95%]
........................................................................ [ 95%]
........................................................................ [ 95%]
......................................................................... [ 96%]
................................................................x..x....x [ 96%]
..........................x...............x...x.x.....x................. [ 96%]
........................................................................ [ 97%]
........................................................................ [ 97%]
........................................................................ [ 98%]
........................................................................ [ 98%]
........................................................................ [ 98%]
........................................................................ [ 99%]
........................................................................ [ 99%]
.....................................................................    [100%]

----------- coverage: platform linux, python 3.7.7-final-0 -----------
Name                                                               Stmts   Miss  Cover
--------------------------------------------------------------------------------------
modin/__init__.py                                                     76     38    50%
modin/_version.py                                                    272    172    37%
modin/apply_license_header.py                                         19     19     0%
modin/backends/__init__.py                                             0      0   100%
modin/backends/base/__init__.py                                        0      0   100%
modin/backends/base/query_compiler.py                                130      0   100%
modin/backends/pandas/__init__.py                                      0      0   100%
modin/backends/pandas/parsers.py                                     207    171    17%
modin/backends/pandas/query_compiler.py                              841     43    95%
modin/data_management/__init__.py                                      0      0   100%
modin/data_management/dispatcher.py                                   78     16    79%
modin/data_management/factories.py                                    85     26    69%
modin/data_management/functions/__init__.py                            7      0   100%
modin/data_management/functions/binary_function.py                    21      0   100%
modin/data_management/functions/foldfunction.py                        6      0   100%
modin/data_management/functions/function.py                            6      1    83%
modin/data_management/functions/groupby_function.py                   50      4    92%
modin/data_management/functions/mapfunction.py                         6      0   100%
modin/data_management/functions/mapreducefunction.py                   9      0   100%
modin/data_management/functions/reductionfunction.py                   6      0   100%
modin/data_management/utils.py                                        32      0   100%
modin/engines/__init__.py                                              0      0   100%
modin/engines/base/__init__.py                                         0      0   100%
modin/engines/base/frame/__init__.py                                   0      0   100%
modin/engines/base/frame/axis_partition.py                            45     10    78%
modin/engines/base/frame/data.py                                     516     34    93%
modin/engines/base/frame/partition.py                                  1      0   100%
modin/engines/base/frame/partition_manager.py                        184     21    89%
modin/engines/base/io/__init__.py                                     12      0   100%
modin/engines/base/io/column_stores/__init__.py                        0      0   100%
modin/engines/base/io/column_stores/column_store_reader.py            40     29    28%
modin/engines/base/io/column_stores/feather_reader.py                  9      5    44%
modin/engines/base/io/column_stores/hdf_reader.py                      3      0   100%
modin/engines/base/io/column_stores/parquet_reader.py                 34     29    15%
modin/engines/base/io/file_reader.py                                  85     66    22%
modin/engines/base/io/io.py                                          110      6    95%
modin/engines/base/io/sql/__init__.py                                  0      0   100%
modin/engines/base/io/sql/sql_reader.py                               39     31    21%
modin/engines/base/io/text/__init__.py                                 0      0   100%
modin/engines/base/io/text/csv_reader.py                             112    105     6%
modin/engines/base/io/text/excel_reader.py                           106     97     8%
modin/engines/base/io/text/fwf_reader.py                             115    108     6%
modin/engines/base/io/text/json_reader.py                             50     43    14%
modin/engines/base/io/text/text_file_reader.py                        34     24    29%
modin/engines/base/series/__init__.py                                  0      0   100%
modin/engines/dask/__init__.py                                         0      0   100%
modin/engines/dask/pandas_on_dask/__init__.py                          0      0   100%
modin/engines/dask/pandas_on_dask/frame/__init__.py                    0      0   100%
modin/engines/dask/pandas_on_dask/frame/axis_partition.py             27     27     0%
modin/engines/dask/pandas_on_dask/frame/data.py                       15     15     0%
modin/engines/dask/pandas_on_dask/frame/partition.py                  75     75     0%
modin/engines/dask/pandas_on_dask/frame/partition_manager.py          44     44     0%
modin/engines/dask/pandas_on_dask/io.py                               17     17     0%
modin/engines/dask/pandas_on_dask/series/__init__.py                   0      0   100%
modin/engines/dask/task_wrapper.py                                     9      9     0%
modin/engines/python/__init__.py                                       0      0   100%
modin/engines/python/pandas_on_python/__init__.py                      0      0   100%
modin/engines/python/pandas_on_python/frame/__init__.py                0      0   100%
modin/engines/python/pandas_on_python/frame/axis_partition.py         14      0   100%
modin/engines/python/pandas_on_python/frame/data.py                    4      0   100%
modin/engines/python/pandas_on_python/frame/partition.py              65      4    94%
modin/engines/python/pandas_on_python/frame/partition_manager.py       7      0   100%
modin/engines/python/pandas_on_python/io.py                            6      0   100%
modin/engines/python/pandas_on_python/series/__init__.py               0      0   100%
modin/engines/ray/__init__.py                                          0      0   100%
modin/engines/ray/generic/__init__.py                                  0      0   100%
modin/engines/ray/generic/frame/__init__.py                            0      0   100%
modin/engines/ray/generic/frame/partition_manager.py                  10     10     0%
modin/engines/ray/generic/io.py                                       14     14     0%
modin/engines/ray/generic/series/__init__.py                           0      0   100%
modin/engines/ray/pandas_on_ray/__init__.py                            0      0   100%
modin/engines/ray/pandas_on_ray/frame/__init__.py                      0      0   100%
modin/engines/ray/pandas_on_ray/frame/axis_partition.py               22     22     0%
modin/engines/ray/pandas_on_ray/frame/data.py                         11     11     0%
modin/engines/ray/pandas_on_ray/frame/partition.py                    86     86     0%
modin/engines/ray/pandas_on_ray/frame/partition_manager.py            43     43     0%
modin/engines/ray/pandas_on_ray/io.py                                 18     18     0%
modin/engines/ray/pandas_on_ray/series/__init__.py                     0      0   100%
modin/engines/ray/task_wrapper.py                                      7      7     0%
modin/engines/ray/utils.py                                            52     52     0%
modin/error_message.py                                                27      2    93%
modin/experimental/__init__.py                                         0      0   100%
modin/experimental/cloud/__init__.py                                   6      6     0%
modin/experimental/cloud/base.py                                      36     36     0%
modin/experimental/cloud/cluster.py                                   90     90     0%
modin/experimental/cloud/connection.py                                98     98     0%
modin/experimental/cloud/rayscale.py                                 107    107     0%
modin/experimental/engines/__init__.py                                 0      0   100%
modin/experimental/engines/pandas_on_ray/__init__.py                   0      0   100%
modin/experimental/engines/pandas_on_ray/io_exp.py                    38     38     0%
modin/experimental/engines/pandas_on_ray/sql.py                       66     66     0%
modin/experimental/pandas/__init__.py                                  6      6     0%
modin/experimental/pandas/io_exp.py                                    7      7     0%
modin/pandas/__init__.py                                              38      7    82%
modin/pandas/base.py                                                1213     99    92%
modin/pandas/concat.py                                                58      5    91%
modin/pandas/dataframe.py                                            870     95    89%
modin/pandas/datetimes.py                                              7      0   100%
modin/pandas/general.py                                               53      3    94%
modin/pandas/groupby.py                                              291     38    87%
modin/pandas/indexing.py                                             209     32    85%
modin/pandas/io.py                                                   147     11    93%
modin/pandas/iterator.py                                              17      0   100%
modin/pandas/reshape.py                                               30      0   100%
modin/pandas/series.py                                               945     79    92%
modin/pandas/utils.py                                                 28      3    89%
--------------------------------------------------------------------------------------
TOTAL                                                               8279   2380    71%

= 18376 passed, 31 skipped, 105 xfailed, 515 xpassed, 32732 warnings in 688.41s (0:11:28) =

TOTAL                                                               8279   2380    71%

= 18376 passed, 31 skipped, 105 xfailed, 515 xpassed, 32732 warnings in 688.41s (0:11:28) =

@modin-bot
Copy link

modin-bot commented Jul 4, 2020

TeamCity Dask test results bot

Tests PASSed

Tests Logs
============================= test session starts ==============================
platform linux -- Python 3.7.7, pytest-5.4.3, py-1.8.1, pluggy-0.13.1
rootdir: /modin, inifile: setup.cfg
plugins: openfiles-0.5.0, remotedata-0.3.2, cov-2.10.0, custom-exit-code-0.3.0, forked-1.2.0, testmon-1.0.2, xdist-1.33.0
collected 94 items

modin/pandas/test/test_io.py .................sx..........s............. [ 45%]
...................s..s.X.....s.................ss.                      [100%]

----------- coverage: platform linux, python 3.7.7-final-0 -----------
Name                                                               Stmts   Miss  Cover
--------------------------------------------------------------------------------------
modin/__init__.py                                                     76     38    50%
modin/_version.py                                                    272    172    37%
modin/apply_license_header.py                                         19     19     0%
modin/backends/__init__.py                                             0      0   100%
modin/backends/base/__init__.py                                        0      0   100%
modin/backends/base/query_compiler.py                                130      1    99%
modin/backends/pandas/__init__.py                                      0      0   100%
modin/backends/pandas/parsers.py                                     207    125    40%
modin/backends/pandas/query_compiler.py                              841    511    39%
modin/data_management/__init__.py                                      0      0   100%
modin/data_management/dispatcher.py                                   78     16    79%
modin/data_management/factories.py                                    85     26    69%
modin/data_management/functions/__init__.py                            7      0   100%
modin/data_management/functions/binary_function.py                    21     14    33%
modin/data_management/functions/foldfunction.py                        6      1    83%
modin/data_management/functions/function.py                            6      1    83%
modin/data_management/functions/groupby_function.py                   50     44    12%
modin/data_management/functions/mapfunction.py                         6      1    83%
modin/data_management/functions/mapreducefunction.py                   9      2    78%
modin/data_management/functions/reductionfunction.py                   6      1    83%
modin/data_management/utils.py                                        32     14    56%
modin/engines/__init__.py                                              0      0   100%
modin/engines/base/__init__.py                                         0      0   100%
modin/engines/base/frame/__init__.py                                   0      0   100%
modin/engines/base/frame/axis_partition.py                            45     31    31%
modin/engines/base/frame/data.py                                     516    293    43%
modin/engines/base/frame/partition.py                                  1      0   100%
modin/engines/base/frame/partition_manager.py                        184    100    46%
modin/engines/base/io/__init__.py                                     12      0   100%
modin/engines/base/io/column_stores/__init__.py                        0      0   100%
modin/engines/base/io/column_stores/column_store_reader.py            40      0   100%
modin/engines/base/io/column_stores/feather_reader.py                  9      0   100%
modin/engines/base/io/column_stores/hdf_reader.py                      3      0   100%
modin/engines/base/io/column_stores/parquet_reader.py                 34      1    97%
modin/engines/base/io/file_reader.py                                  85      7    92%
modin/engines/base/io/io.py                                          110     34    69%
modin/engines/base/io/sql/__init__.py                                  0      0   100%
modin/engines/base/io/sql/sql_reader.py                               39      1    97%
modin/engines/base/io/text/__init__.py                                 0      0   100%
modin/engines/base/io/text/csv_reader.py                             112      4    96%
modin/engines/base/io/text/excel_reader.py                           106      9    92%
modin/engines/base/io/text/fwf_reader.py                             115    108     6%
modin/engines/base/io/text/json_reader.py                             50      2    96%
modin/engines/base/io/text/text_file_reader.py                        34      1    97%
modin/engines/base/series/__init__.py                                  0      0   100%
modin/engines/dask/__init__.py                                         0      0   100%
modin/engines/dask/pandas_on_dask/__init__.py                          0      0   100%
modin/engines/dask/pandas_on_dask/frame/__init__.py                    0      0   100%
modin/engines/dask/pandas_on_dask/frame/axis_partition.py             27      5    81%
modin/engines/dask/pandas_on_dask/frame/data.py                       15      0   100%
modin/engines/dask/pandas_on_dask/frame/partition.py                  75     21    72%
modin/engines/dask/pandas_on_dask/frame/partition_manager.py          44     23    48%
modin/engines/dask/pandas_on_dask/io.py                               17      0   100%
modin/engines/dask/pandas_on_dask/series/__init__.py                   0      0   100%
modin/engines/dask/task_wrapper.py                                     9      0   100%
modin/engines/python/__init__.py                                       0      0   100%
modin/engines/python/pandas_on_python/__init__.py                      0      0   100%
modin/engines/python/pandas_on_python/frame/__init__.py                0      0   100%
modin/engines/python/pandas_on_python/frame/axis_partition.py         14     14     0%
modin/engines/python/pandas_on_python/frame/data.py                    4      4     0%
modin/engines/python/pandas_on_python/frame/partition.py              65     65     0%
modin/engines/python/pandas_on_python/frame/partition_manager.py       7      7     0%
modin/engines/python/pandas_on_python/io.py                            6      6     0%
modin/engines/python/pandas_on_python/series/__init__.py               0      0   100%
modin/engines/ray/__init__.py                                          0      0   100%
modin/engines/ray/generic/__init__.py                                  0      0   100%
modin/engines/ray/generic/frame/__init__.py                            0      0   100%
modin/engines/ray/generic/frame/partition_manager.py                  10     10     0%
modin/engines/ray/generic/io.py                                       14     14     0%
modin/engines/ray/generic/series/__init__.py                           0      0   100%
modin/engines/ray/pandas_on_ray/__init__.py                            0      0   100%
modin/engines/ray/pandas_on_ray/frame/__init__.py                      0      0   100%
modin/engines/ray/pandas_on_ray/frame/axis_partition.py               22     22     0%
modin/engines/ray/pandas_on_ray/frame/data.py                         11     11     0%
modin/engines/ray/pandas_on_ray/frame/partition.py                    86     86     0%
modin/engines/ray/pandas_on_ray/frame/partition_manager.py            43     43     0%
modin/engines/ray/pandas_on_ray/io.py                                 18     18     0%
modin/engines/ray/pandas_on_ray/series/__init__.py                     0      0   100%
modin/engines/ray/task_wrapper.py                                      7      7     0%
modin/engines/ray/utils.py                                            52     52     0%
modin/error_message.py                                                27      7    74%
modin/experimental/__init__.py                                         0      0   100%
modin/experimental/cloud/__init__.py                                   6      6     0%
modin/experimental/cloud/base.py                                      36     36     0%
modin/experimental/cloud/cluster.py                                   90     90     0%
modin/experimental/cloud/connection.py                                98     98     0%
modin/experimental/cloud/rayscale.py                                 107    107     0%
modin/experimental/engines/__init__.py                                 0      0   100%
modin/experimental/engines/pandas_on_ray/__init__.py                   0      0   100%
modin/experimental/engines/pandas_on_ray/io_exp.py                    38     38     0%
modin/experimental/engines/pandas_on_ray/sql.py                       66     66     0%
modin/experimental/pandas/__init__.py                                  6      6     0%
modin/experimental/pandas/io_exp.py                                    7      7     0%
modin/pandas/__init__.py                                              38      8    79%
modin/pandas/base.py                                                1213    916    24%
modin/pandas/concat.py                                                58     48    17%
modin/pandas/dataframe.py                                            870    675    22%
modin/pandas/datetimes.py                                              7      3    57%
modin/pandas/general.py                                               53     35    34%
modin/pandas/groupby.py                                              291    201    31%
modin/pandas/indexing.py                                             209    209     0%
modin/pandas/io.py                                                   147     11    93%
modin/pandas/iterator.py                                              17     11    35%
modin/pandas/reshape.py                                               30     20    33%
modin/pandas/series.py                                               945    625    34%
modin/pandas/utils.py                                                 28      3    89%
--------------------------------------------------------------------------------------
TOTAL                                                               8279   5211    37%


= 85 passed, 7 skipped, 1 xfailed, 1 xpassed, 114 warnings in 89.10s (0:01:29) =
Closing remaining open files:test_write_modin.hdf...donetest_write_pandas.hdf...done
============================= test session starts ==============================
platform linux -- Python 3.7.7, pytest-5.4.3, py-1.8.1, pluggy-0.13.1
rootdir: /modin, inifile: setup.cfg
plugins: openfiles-0.5.0, remotedata-0.3.2, cov-2.10.0, custom-exit-code-0.3.0, forked-1.2.0, testmon-1.0.2, xdist-1.33.0
gw0 I / gw1 I / gw2 I / gw3 I / gw4 I / gw5 I / gw6 I / gw7 I / gw8 I / gw9 I / gw10 I / gw11 I / gw12 I / gw13 I / gw14 I / gw15 I / gw16 I / gw17 I / gw18 I / gw19 I / gw20 I / gw21 I / gw22 I / gw23 I / gw24 I / gw25 I / gw26 I / gw27 I / gw28 I / gw29 I / gw30 I / gw31 I / gw32 I / gw33 I / gw34 I / gw35 I / gw36 I / gw37 I / gw38 I / gw39 I / gw40 I / gw41 I / gw42 I / gw43 I / gw44 I / gw45 I / gw46 I / gw47 I
gw0 [19027] / gw1 [19027] / gw2 [19027] / gw3 [19027] / gw4 [19027] / gw5 [19027] / gw6 [19027] / gw7 [19027] / gw8 [19027] / gw9 [19027] / gw10 [19027] / gw11 [19027] / gw12 [19027] / gw13 [19027] / gw14 [19027] / gw15 [19027] / gw16 [19027] / gw17 [19027] / gw18 [19027] / gw19 [19027] / gw20 [19027] / gw21 [19027] / gw22 [19027] / gw23 [19027] / gw24 [19027] / gw25 [19027] / gw26 [19027] / gw27 [19027] / gw28 [19027] / gw29 [19027] / gw30 [19027] / gw31 [19027] / gw32 [19027] / gw33 [19027] / gw34 [19027] / gw35 [19027] / gw36 [19027] / gw37 [19027] / gw38 [19027] / gw39 [19027] / gw40 [19027] / gw41 [19027] / gw42 [19027] / gw43 [19027] / gw44 [19027] / gw45 [19027] / gw46 [19027] / gw47 [19027]

......................................................................... [  0%]
......................................................................... [  0%]
......................................................................... [  1%]
......................................................................... [  1%]
.............................................s.......................... [  1%]
........................................................................ [  2%]
......................................................................... [  2%]
........................................................................ [  3%]
........................................................................ [  3%]
..............................................................x......... [  3%]
.........x.....s...................................X.............X......X [  4%]
........XX.......X...XX....s.....x...................x.........xx.....x.. [  4%]
X...X.....X.x..x...X.Xx...x.XXX...x..XXX..X.X.XXX.x....X.XX.....XXx.X.X. [  4%]
.XX.X.XXX.....X.X....XX....X....XX..X......X................x.X....X...X [  5%]
.........X......x........XX...................XX.X.....X..XX.X.X.XX...XX [  5%]
XX..X.X.X.X.XXXX..XXXX..XX..X..XXX.X.X..XX.X.X......X........X......X... [  6%]
..............X..................X.........X............................ [  6%]
.................X..........X..X....X....X...X.X.X.X..X.XXX....XXX...X.X [  6%]
.....X.........X..................................X.........X..x........ [  7%]
.X.....X.........XX.......XX.....xX..X.X....X.X.X.xX...X.XX........X.X... [  7%]
...X.X...Xx......X.........X..................X....xX........X.......X.. [  7%]
....X...Xx....XX....X.X.XX.XX.....XX.......XX..X.XX...XXx......XXX..XX.. [  8%]
.X.X......X.Xxx...X.XXX....X....X..x......x..X.............x..xX..X..... [  8%]
x............x.....x.XXXX...XX..XX.XX.XX.X.XX...XX..XXX.XX.XXXX.XXX..X.X [  9%]
XX..xX..X...XX..X....XX....xX..............X.........X.......XX......... [  9%]
...........XXxX...............x.XX.......x..X.X...X.XXX..........XX.XX.XXX [  9%]
X.x...X.X..XX...X....X..X..........X.........XX............X............ [ 10%]
.X...........X.......X...............X.........X....x.....X.X...XX.X..XX [ 10%]
....X.X.X.XX...X.X.X.x.............x...X......X.X....X...x.X.......X.... [ 11%]
...X.X..........X.............X......X....X.....X...X........X..X....X.. [ 11%]
.....X....X.........X..............XX....X...X.....XX...X...x.x.X.X.X... [ 11%]
....X....XX...X....X..X...XX.XX....X.X.....X.X.......................... [ 12%]
..........................X........x..............X......X......XX..xXx.. [ 12%]
.X..XXX..X......X.X..x...X......XX......x...X.............X......x...... [ 12%]
.........X.x.........X....X....Xx...x....X..X.........XXx...XX.....xX.X. [ 13%]
.X.XX..xX.x....XXX....X..X..X.........XX......XX..........X...X.......... [ 13%]
.XxX.....X.XX......X....X.........X.X...X.X.....X.......X..X.....X....X. [ 14%]
..XX....XXX......X....X....X.....X....X.X....X......XX.X.XX.......xxX... [ 14%]
X.........X...X...XX.x..XX..........X....x........x......X.X......x..... [ 14%]
....x.................X....X......X......X...X.........X.....XX......X.X [ 15%]
..............X.........X...........................X.....X.......X..... [ 15%]
......X..............x................x.....Xx.......X...X.......X...... [ 15%]
....X..........XX..XX.......X...x................X...X....X............. [ 16%]
..................X................................................x.... [ 16%]
........................................X..........X..x..X..........X..X [ 17%]
..........X.........X..........x.........................x.............. [ 17%]
...X......x..x....................X........x............X.X............. [ 17%]
.......X.........X..........xX.X.x............X..............x.........x. [ 18%]
.s......x...........X........x.....X...X.X.X.........X..X....X......X... [ 18%]
........X.............XXX.......X.....X..X.X...............X.........XX. [ 18%]
......X..XX..X..x...X......XX..X.X.......X........X..X................... [ 19%]
X.Xx..........x........x......................................X.....X... [ 19%]
..X.......................................X...X...........X..X........... [ 20%]
.......X..............................x...X........................XX... [ 20%]
.............XX......................................................... [ 20%]
......................................................................... [ 21%]
......................................................................... [ 21%]
.................................................X.....X............s.... [ 22%]
.......................X......................X......................... [ 22%]
....X.................X.............s................................... [ 22%]
......................................................................... [ 23%]
........................................................................ [ 23%]
................................................................x....... [ 23%]
......................................................................... [ 24%]
........................................................................ [ 24%]
........................................................................ [ 25%]
......................................................................... [ 25%]
........................................................................ [ 25%]
........................................................................ [ 26%]
........................................................................ [ 26%]
...........x............................................................ [ 26%]
........................................................................ [ 27%]
........................................................................ [ 27%]
.......................................................x................ [ 28%]
........................................................................ [ 28%]
..............x...................................................x..... [ 28%]
........................................................................ [ 29%]
........................................................................ [ 29%]
........................................................................ [ 30%]
........................................................................ [ 30%]
........................................................................ [ 30%]
.......................................x................................ [ 31%]
........................................................................ [ 31%]
........................................................................ [ 31%]
........................................................................ [ 32%]
........................................................................ [ 32%]
........................................................................ [ 33%]
......................................................................... [ 33%]
........................................................................ [ 33%]
......................................................................... [ 34%]
........................................................................ [ 34%]
........................................................................ [ 34%]
........................................................................ [ 35%]
........................................................................ [ 35%]
........................................................................ [ 36%]
........................................................................ [ 36%]
........................................................................ [ 36%]
........................................................................ [ 37%]
........................................................................ [ 37%]
........................................................................ [ 37%]
........................................................................ [ 38%]
......................................................................... [ 38%]
......................................................................... [ 39%]
...................X.................................................... [ 39%]
......................................................................... [ 39%]
........................................................................ [ 40%]
........................................................................ [ 40%]
......................................................................... [ 41%]
......................................................................... [ 41%]
........................................................................ [ 41%]
........................................................................ [ 42%]
........................................................................ [ 42%]
........................................................................ [ 42%]
........................................................................ [ 43%]
........................................................................ [ 43%]
........................................................................ [ 44%]
........................................................................ [ 44%]
......................................................................... [ 44%]
........................................................................ [ 45%]
.....................................................sssssssssss.ss..sss [ 45%]
ss....................................................................... [ 45%]
........................................................................ [ 46%]
........................................................................ [ 46%]
........................................................................ [ 47%]
........................................................................ [ 47%]
........................................................................ [ 47%]
........................................................................ [ 48%]
........................................................................ [ 48%]
........................................................................ [ 48%]
........................................................................ [ 49%]
........................................................................ [ 49%]
......................................................................... [ 50%]
........................................................................ [ 50%]
........................................................................ [ 50%]
........................................................................ [ 51%]
........................................................................ [ 51%]
........................................................................ [ 52%]
........................................................................ [ 52%]
........................................................................ [ 52%]
........................................................................ [ 53%]
......................................................................... [ 53%]
........................................................................ [ 53%]
........................................................................ [ 54%]
......................................................................... [ 54%]
........................................................................ [ 55%]
........................................................................ [ 55%]
........................................................................ [ 55%]
........................................................................ [ 56%]
........................................................................ [ 56%]
........................................................................ [ 56%]
......................................................................... [ 57%]
........................................................................ [ 57%]
........................................................................ [ 58%]
........................................................................ [ 58%]
........................................................................ [ 58%]
........................................................................ [ 59%]
........................................................................ [ 59%]
......................................................................... [ 59%]
........................................................................ [ 60%]
........................................................................ [ 60%]
......................................................................... [ 61%]
........................................................................ [ 61%]
........................................................................ [ 61%]
........................................................................ [ 62%]
........................................................................ [ 62%]
........................................................................ [ 63%]
........................................................................ [ 63%]
........................................................................ [ 63%]
......................................................................... [ 64%]
........................................................................ [ 64%]
........................................................................ [ 64%]
........................................................................ [ 65%]
........................................................................ [ 65%]
......................................................................... [ 66%]
........................................................................ [ 66%]
........................................................................ [ 66%]
........................................................................ [ 67%]
........................................................................ [ 67%]
........................................................................ [ 67%]
........................................................................ [ 68%]
........................................................................ [ 68%]
........................................................................ [ 69%]
........................................................................ [ 69%]
........................................................................ [ 69%]
........................................................................ [ 70%]
........................................................................ [ 70%]
........................................................................ [ 70%]
........................................................................ [ 71%]
........................................................................ [ 71%]
........................................................................ [ 72%]
........................................................................ [ 72%]
........................................................................ [ 72%]
........................................................................ [ 73%]
........................................................................ [ 73%]
........................................................................ [ 73%]
........................................................................ [ 74%]
........................................................................ [ 74%]
........................................................................ [ 75%]
......................................................................... [ 75%]
........................................................................ [ 75%]
........................................................................ [ 76%]
........................................................................ [ 76%]
........................................................................ [ 77%]
........................................................................ [ 77%]
........................................................................ [ 77%]
........................................................................ [ 78%]
........................................................................ [ 78%]
........................................................................ [ 78%]
........................................................................ [ 79%]
........................................................................ [ 79%]
........................................................................ [ 80%]
........................................................................ [ 80%]
........................................................................ [ 80%]
........................................................................ [ 81%]
........................................................................ [ 81%]
........................................................................ [ 81%]
........................................................................ [ 82%]
........................................................................ [ 82%]
......................................................................... [ 83%]
........................................................................ [ 83%]
......................................................................... [ 83%]
......................................................................... [ 84%]
........................................................................ [ 84%]
......................................................................... [ 84%]
........................................................................ [ 85%]
........................................................................ [ 85%]
........................................................................ [ 86%]
........................................................................ [ 86%]
........................................................................ [ 86%]
........................................................................ [ 87%]
......................................................................... [ 87%]
........................................................................ [ 88%]
........................................................................ [ 88%]
........................................................................ [ 88%]
........................................................................ [ 89%]
........................................................................ [ 89%]
........................................................................ [ 89%]
........................................................................ [ 90%]
........................................................................ [ 90%]
........................................................................ [ 91%]
........................................................................ [ 91%]
.......ss.sss........................................................... [ 91%]
...........s............................................................ [ 92%]
...........................................x.....x...................... [ 92%]
....x...x......X.......X..........................................s..... [ 92%]
........................................................................ [ 93%]
........................................................................ [ 93%]
........................................................................ [ 94%]
........................................................................ [ 94%]
........................................................................ [ 94%]
........................................................................ [ 95%]
........................................................................ [ 95%]
...................................................X..X................. [ 95%]
........................................................................ [ 96%]
........................................................................ [ 96%]
........................................................................ [ 97%]
............................................................x...x....... [ 97%]
x.x....x...............................x..x...........x................. [ 97%]
........................................................................ [ 98%]
........................................................................ [ 98%]
........................................................................ [ 98%]
........................................................................ [ 99%]
........................................................................ [ 99%]
...............................................                          [100%]

----------- coverage: platform linux, python 3.7.7-final-0 -----------
Name                                                               Stmts   Miss  Cover
--------------------------------------------------------------------------------------
modin/__init__.py                                                     76     38    50%
modin/_version.py                                                    272    172    37%
modin/apply_license_header.py                                         19     19     0%
modin/backends/__init__.py                                             0      0   100%
modin/backends/base/__init__.py                                        0      0   100%
modin/backends/base/query_compiler.py                                130      0   100%
modin/backends/pandas/__init__.py                                      0      0   100%
modin/backends/pandas/parsers.py                                     207    125    40%
modin/backends/pandas/query_compiler.py                              841    162    81%
modin/data_management/__init__.py                                      0      0   100%
modin/data_management/dispatcher.py                                   78     16    79%
modin/data_management/factories.py                                    85     26    69%
modin/data_management/functions/__init__.py                            7      0   100%
modin/data_management/functions/binary_function.py                    21      0   100%
modin/data_management/functions/foldfunction.py                        6      0   100%
modin/data_management/functions/function.py                            6      1    83%
modin/data_management/functions/groupby_function.py                   50     36    28%
modin/data_management/functions/mapfunction.py                         6      0   100%
modin/data_management/functions/mapreducefunction.py                   9      0   100%
modin/data_management/functions/reductionfunction.py                   6      0   100%
modin/data_management/utils.py                                        32     14    56%
modin/engines/__init__.py                                              0      0   100%
modin/engines/base/__init__.py                                         0      0   100%
modin/engines/base/frame/__init__.py                                   0      0   100%
modin/engines/base/frame/axis_partition.py                            45     28    38%
modin/engines/base/frame/data.py                                     516     48    91%
modin/engines/base/frame/partition.py                                  1      0   100%
modin/engines/base/frame/partition_manager.py                        184     31    83%
modin/engines/base/io/__init__.py                                     12      0   100%
modin/engines/base/io/column_stores/__init__.py                        0      0   100%
modin/engines/base/io/column_stores/column_store_reader.py            40      0   100%
modin/engines/base/io/column_stores/feather_reader.py                  9      0   100%
modin/engines/base/io/column_stores/hdf_reader.py                      3      0   100%
modin/engines/base/io/column_stores/parquet_reader.py                 34      1    97%
modin/engines/base/io/file_reader.py                                  85      7    92%
modin/engines/base/io/io.py                                          110     34    69%
modin/engines/base/io/sql/__init__.py                                  0      0   100%
modin/engines/base/io/sql/sql_reader.py                               39      1    97%
modin/engines/base/io/text/__init__.py                                 0      0   100%
modin/engines/base/io/text/csv_reader.py                             112      2    98%
modin/engines/base/io/text/excel_reader.py                           106      9    92%
modin/engines/base/io/text/fwf_reader.py                             115    108     6%
modin/engines/base/io/text/json_reader.py                             50      2    96%
modin/engines/base/io/text/text_file_reader.py                        34      1    97%
modin/engines/base/series/__init__.py                                  0      0   100%
modin/engines/dask/__init__.py                                         0      0   100%
modin/engines/dask/pandas_on_dask/__init__.py                          0      0   100%
modin/engines/dask/pandas_on_dask/frame/__init__.py                    0      0   100%
modin/engines/dask/pandas_on_dask/frame/axis_partition.py             27      1    96%
modin/engines/dask/pandas_on_dask/frame/data.py                       15      0   100%
modin/engines/dask/pandas_on_dask/frame/partition.py                  75     16    79%
modin/engines/dask/pandas_on_dask/frame/partition_manager.py          44     18    59%
modin/engines/dask/pandas_on_dask/io.py                               17      0   100%
modin/engines/dask/pandas_on_dask/series/__init__.py                   0      0   100%
modin/engines/dask/task_wrapper.py                                     9      0   100%
modin/engines/python/__init__.py                                       0      0   100%
modin/engines/python/pandas_on_python/__init__.py                      0      0   100%
modin/engines/python/pandas_on_python/frame/__init__.py                0      0   100%
modin/engines/python/pandas_on_python/frame/axis_partition.py         14     14     0%
modin/engines/python/pandas_on_python/frame/data.py                    4      4     0%
modin/engines/python/pandas_on_python/frame/partition.py              65     65     0%
modin/engines/python/pandas_on_python/frame/partition_manager.py       7      7     0%
modin/engines/python/pandas_on_python/io.py                            6      6     0%
modin/engines/python/pandas_on_python/series/__init__.py               0      0   100%
modin/engines/ray/__init__.py                                          0      0   100%
modin/engines/ray/generic/__init__.py                                  0      0   100%
modin/engines/ray/generic/frame/__init__.py                            0      0   100%
modin/engines/ray/generic/frame/partition_manager.py                  10     10     0%
modin/engines/ray/generic/io.py                                       14     14     0%
modin/engines/ray/generic/series/__init__.py                           0      0   100%
modin/engines/ray/pandas_on_ray/__init__.py                            0      0   100%
modin/engines/ray/pandas_on_ray/frame/__init__.py                      0      0   100%
modin/engines/ray/pandas_on_ray/frame/axis_partition.py               22     22     0%
modin/engines/ray/pandas_on_ray/frame/data.py                         11     11     0%
modin/engines/ray/pandas_on_ray/frame/partition.py                    86     86     0%
modin/engines/ray/pandas_on_ray/frame/partition_manager.py            43     43     0%
modin/engines/ray/pandas_on_ray/io.py                                 18     18     0%
modin/engines/ray/pandas_on_ray/series/__init__.py                     0      0   100%
modin/engines/ray/task_wrapper.py                                      7      7     0%
modin/engines/ray/utils.py                                            52     52     0%
modin/error_message.py                                                27      2    93%
modin/experimental/__init__.py                                         0      0   100%
modin/experimental/cloud/__init__.py                                   6      6     0%
modin/experimental/cloud/base.py                                      36     36     0%
modin/experimental/cloud/cluster.py                                   90     90     0%
modin/experimental/cloud/connection.py                                98     98     0%
modin/experimental/cloud/rayscale.py                                 107    107     0%
modin/experimental/engines/__init__.py                                 0      0   100%
modin/experimental/engines/pandas_on_ray/__init__.py                   0      0   100%
modin/experimental/engines/pandas_on_ray/io_exp.py                    38     38     0%
modin/experimental/engines/pandas_on_ray/sql.py                       66     66     0%
modin/experimental/pandas/__init__.py                                  6      6     0%
modin/experimental/pandas/io_exp.py                                    7      7     0%
modin/pandas/__init__.py                                              38      8    79%
modin/pandas/base.py                                                1213     99    92%
modin/pandas/concat.py                                                58      5    91%
modin/pandas/dataframe.py                                            870     95    89%
modin/pandas/datetimes.py                                              7      0   100%
modin/pandas/general.py                                               53      3    94%
modin/pandas/groupby.py                                              291     38    87%
modin/pandas/indexing.py                                             209     32    85%
modin/pandas/io.py                                                   147     11    93%
modin/pandas/iterator.py                                              17      0   100%
modin/pandas/reshape.py                                               30      0   100%
modin/pandas/series.py                                               945     80    92%
modin/pandas/utils.py                                                 28      3    89%
--------------------------------------------------------------------------------------
TOTAL                                                               8279   2105    75%

= 18376 passed, 31 skipped, 105 xfailed, 515 xpassed, 32821 warnings in 1769.31s (0:29:29) =

TOTAL                                                               8279   2105    75%

= 18376 passed, 31 skipped, 105 xfailed, 515 xpassed, 32821 warnings in 1769.31s (0:29:29) =

@modin-bot
Copy link

modin-bot commented Jul 4, 2020

TeamCity Ray test results bot

Tests PASSed

Tests Logs
============================= test session starts ==============================
platform linux -- Python 3.7.7, pytest-5.4.3, py-1.8.1, pluggy-0.13.1
rootdir: /modin, inifile: setup.cfg
plugins: openfiles-0.5.0, remotedata-0.3.2, cov-2.10.0, custom-exit-code-0.3.0, forked-1.2.0, testmon-1.0.2, xdist-1.33.0
collected 94 items

modin/pandas/test/test_io.py .................sx..........s............. [ 45%]
...................s..s.X.....s.................ss.                      [100%]

----------- coverage: platform linux, python 3.7.7-final-0 -----------
Name                                                               Stmts   Miss  Cover
--------------------------------------------------------------------------------------
modin/__init__.py                                                     76     38    50%
modin/_version.py                                                    272    172    37%
modin/apply_license_header.py                                         19     19     0%
modin/backends/__init__.py                                             0      0   100%
modin/backends/base/__init__.py                                        0      0   100%
modin/backends/base/query_compiler.py                                130      1    99%
modin/backends/pandas/__init__.py                                      0      0   100%
modin/backends/pandas/parsers.py                                     207    119    43%
modin/backends/pandas/query_compiler.py                              841    510    39%
modin/data_management/__init__.py                                      0      0   100%
modin/data_management/dispatcher.py                                   78     16    79%
modin/data_management/factories.py                                    85     26    69%
modin/data_management/functions/__init__.py                            7      0   100%
modin/data_management/functions/binary_function.py                    21     14    33%
modin/data_management/functions/foldfunction.py                        6      1    83%
modin/data_management/functions/function.py                            6      1    83%
modin/data_management/functions/groupby_function.py                   50     44    12%
modin/data_management/functions/mapfunction.py                         6      1    83%
modin/data_management/functions/mapreducefunction.py                   9      2    78%
modin/data_management/functions/reductionfunction.py                   6      1    83%
modin/data_management/utils.py                                        32     14    56%
modin/engines/__init__.py                                              0      0   100%
modin/engines/base/__init__.py                                         0      0   100%
modin/engines/base/frame/__init__.py                                   0      0   100%
modin/engines/base/frame/axis_partition.py                            45     31    31%
modin/engines/base/frame/data.py                                     516    276    47%
modin/engines/base/frame/partition.py                                  1      0   100%
modin/engines/base/frame/partition_manager.py                        184     97    47%
modin/engines/base/io/__init__.py                                     12      0   100%
modin/engines/base/io/column_stores/__init__.py                        0      0   100%
modin/engines/base/io/column_stores/column_store_reader.py            40      0   100%
modin/engines/base/io/column_stores/feather_reader.py                  9      0   100%
modin/engines/base/io/column_stores/hdf_reader.py                      3      0   100%
modin/engines/base/io/column_stores/parquet_reader.py                 34      1    97%
modin/engines/base/io/file_reader.py                                  85      7    92%
modin/engines/base/io/io.py                                          110     45    59%
modin/engines/base/io/sql/__init__.py                                  0      0   100%
modin/engines/base/io/sql/sql_reader.py                               39      1    97%
modin/engines/base/io/text/__init__.py                                 0      0   100%
modin/engines/base/io/text/csv_reader.py                             112      4    96%
modin/engines/base/io/text/excel_reader.py                           106      9    92%
modin/engines/base/io/text/fwf_reader.py                             115     16    86%
modin/engines/base/io/text/json_reader.py                             50      2    96%
modin/engines/base/io/text/text_file_reader.py                        34      1    97%
modin/engines/base/series/__init__.py                                  0      0   100%
modin/engines/dask/__init__.py                                         0      0   100%
modin/engines/dask/pandas_on_dask/__init__.py                          0      0   100%
modin/engines/dask/pandas_on_dask/frame/__init__.py                    0      0   100%
modin/engines/dask/pandas_on_dask/frame/axis_partition.py             27     27     0%
modin/engines/dask/pandas_on_dask/frame/data.py                       15     15     0%
modin/engines/dask/pandas_on_dask/frame/partition.py                  75     75     0%
modin/engines/dask/pandas_on_dask/frame/partition_manager.py          44     44     0%
modin/engines/dask/pandas_on_dask/io.py                               17     17     0%
modin/engines/dask/pandas_on_dask/series/__init__.py                   0      0   100%
modin/engines/dask/task_wrapper.py                                     9      9     0%
modin/engines/python/__init__.py                                       0      0   100%
modin/engines/python/pandas_on_python/__init__.py                      0      0   100%
modin/engines/python/pandas_on_python/frame/__init__.py                0      0   100%
modin/engines/python/pandas_on_python/frame/axis_partition.py         14     14     0%
modin/engines/python/pandas_on_python/frame/data.py                    4      4     0%
modin/engines/python/pandas_on_python/frame/partition.py              65     65     0%
modin/engines/python/pandas_on_python/frame/partition_manager.py       7      7     0%
modin/engines/python/pandas_on_python/io.py                            6      6     0%
modin/engines/python/pandas_on_python/series/__init__.py               0      0   100%
modin/engines/ray/__init__.py                                          0      0   100%
modin/engines/ray/generic/__init__.py                                  0      0   100%
modin/engines/ray/generic/frame/__init__.py                            0      0   100%
modin/engines/ray/generic/frame/partition_manager.py                  10      5    50%
modin/engines/ray/generic/io.py                                       14      3    79%
modin/engines/ray/generic/series/__init__.py                           0      0   100%
modin/engines/ray/pandas_on_ray/__init__.py                            0      0   100%
modin/engines/ray/pandas_on_ray/frame/__init__.py                      0      0   100%
modin/engines/ray/pandas_on_ray/frame/axis_partition.py               22      1    95%
modin/engines/ray/pandas_on_ray/frame/data.py                         11      3    73%
modin/engines/ray/pandas_on_ray/frame/partition.py                    86     13    85%
modin/engines/ray/pandas_on_ray/frame/partition_manager.py            43     21    51%
modin/engines/ray/pandas_on_ray/io.py                                 18      0   100%
modin/engines/ray/pandas_on_ray/series/__init__.py                     0      0   100%
modin/engines/ray/task_wrapper.py                                      7      0   100%
modin/engines/ray/utils.py                                            52     16    69%
modin/error_message.py                                                27      7    74%
modin/experimental/__init__.py                                         0      0   100%
modin/experimental/cloud/__init__.py                                   6      6     0%
modin/experimental/cloud/base.py                                      36     36     0%
modin/experimental/cloud/cluster.py                                   90     90     0%
modin/experimental/cloud/connection.py                                98     98     0%
modin/experimental/cloud/rayscale.py                                 107    107     0%
modin/experimental/engines/__init__.py                                 0      0   100%
modin/experimental/engines/pandas_on_ray/__init__.py                   0      0   100%
modin/experimental/engines/pandas_on_ray/io_exp.py                    38     38     0%
modin/experimental/engines/pandas_on_ray/sql.py                       66     66     0%
modin/experimental/pandas/__init__.py                                  6      6     0%
modin/experimental/pandas/io_exp.py                                    7      7     0%
modin/pandas/__init__.py                                              38      3    92%
modin/pandas/base.py                                                1213    916    24%
modin/pandas/concat.py                                                58     48    17%
modin/pandas/dataframe.py                                            870    675    22%
modin/pandas/datetimes.py                                              7      3    57%
modin/pandas/general.py                                               53     35    34%
modin/pandas/groupby.py                                              291    201    31%
modin/pandas/indexing.py                                             209    209     0%
modin/pandas/io.py                                                   147     11    93%
modin/pandas/iterator.py                                              17     11    35%
modin/pandas/reshape.py                                               30     20    33%
modin/pandas/series.py                                               945    625    34%
modin/pandas/utils.py                                                 28      3    89%
--------------------------------------------------------------------------------------
TOTAL                                                               8279   5035    39%


====== 85 passed, 7 skipped, 1 xfailed, 1 xpassed, 102 warnings in 59.74s ======
Closing remaining open files:test_write_pandas.hdf...donetest_write_modin.hdf...done
============================= test session starts ==============================
platform linux -- Python 3.7.7, pytest-5.4.3, py-1.8.1, pluggy-0.13.1
rootdir: /modin, inifile: setup.cfg
plugins: openfiles-0.5.0, remotedata-0.3.2, cov-2.10.0, custom-exit-code-0.3.0, forked-1.2.0, testmon-1.0.2, xdist-1.33.0
gw0 I / gw1 I / gw2 I / gw3 I / gw4 I / gw5 I / gw6 I / gw7 I / gw8 I / gw9 I / gw10 I / gw11 I / gw12 I / gw13 I / gw14 I / gw15 I / gw16 I / gw17 I / gw18 I / gw19 I / gw20 I / gw21 I / gw22 I / gw23 I / gw24 I / gw25 I / gw26 I / gw27 I / gw28 I / gw29 I / gw30 I / gw31 I / gw32 I / gw33 I / gw34 I / gw35 I / gw36 I / gw37 I / gw38 I / gw39 I / gw40 I / gw41 I / gw42 I / gw43 I / gw44 I / gw45 I / gw46 I / gw47 I
gw0 [19027] / gw1 [19027] / gw2 [19027] / gw3 [19027] / gw4 [19027] / gw5 [19027] / gw6 [19027] / gw7 [19027] / gw8 [19027] / gw9 [19027] / gw10 [19027] / gw11 [19027] / gw12 [19027] / gw13 [19027] / gw14 [19027] / gw15 [19027] / gw16 [19027] / gw17 [19027] / gw18 [19027] / gw19 [19027] / gw20 [19027] / gw21 [19027] / gw22 [19027] / gw23 [19027] / gw24 [19027] / gw25 [19027] / gw26 [19027] / gw27 [19027] / gw28 [19027] / gw29 [19027] / gw30 [19027] / gw31 [19027] / gw32 [19027] / gw33 [19027] / gw34 [19027] / gw35 [19027] / gw36 [19027] / gw37 [19027] / gw38 [19027] / gw39 [19027] / gw40 [19027] / gw41 [19027] / gw42 [19027] / gw43 [19027] / gw44 [19027] / gw45 [19027] / gw46 [19027] / gw47 [19027]

........................................................................ [  0%]
........................................................................ [  0%]
........................................................................ [  1%]
........................................................................ [  1%]
........................................................................ [  1%]
......s................................................................. [  2%]
........................................................................ [  2%]
........................................................................ [  3%]
................................................s....................... [  3%]
........X...........x....x..............xx.......X........x.....x.x..... [  3%]
....X............Xx...X.X...X..X.X.......X.X.......X......XX.X...X.....x [  4%]
......X.X..XX...x.X..X...x...xXX..X.xX..X.X.......XXxX...XXX..X...X..X.. [  4%]
...X.....X...XX..X.......X..X.......XXX...X...........X.....XX.......X.. [  4%]
.........X.......X.X.............X..X.X.........s.....XX......X...X..... [  5%]
................X...................X......X..................X....x.... [  5%]
.................X........x......................x....XX................ [  6%]
..X..X...X...X.X....x.....XX..........XXX....x.X.....X.X....X..X..XX.... [  6%]
X...X.X...X.....X.......XXX.X......X.....x.X.x.XX...X..XXX........X.xX.. [  6%]
.Xx...XXXX...x......X..X.XXx......X..xx.....X.X.X.xXXXX..X..XX...x.X.X.. [  7%]
.....XXX.X.x..X..........X.X..XX.X......X..X.XX..XX.X...X....X......X... [  7%]
..X.X....X..xXXX..XX.X....XXX....XxX.X.......XXx...X..X.X.....X...X.X... [  7%]
X.x.XXX......X....X....X.....XX........XX..X....X.....X.X......X...X.X.. [  8%]
.X.............X......X.........x......X......X.X.X....x....x.........X. [  8%]
.....X....................X...X....XX...XX.........X....X.XX..X...X.X..X [  9%]
....X..X....X.......X......xXXX..XXX...X.............X.X..X.....XXXX..XX [  9%]
.......X...X......X...XX....X.XX..X...X....X..X......XX.......XX........ [  9%]
XX........XX..........................Xx..XX.XX......X.............XXXXX [ 10%]
X..........X.....X..........x.X.XXXX.....X..XX......x...X...X.....x..X.. [ 10%]
.xX.XXX....X..X..X.X....X...X.X.....X...X.....X..X..X.XXx..X..XX..X...X. [ 10%]
..X.X....X.....X...X.X.....X.X...........XXX.........X.XX........X.X...X [ 11%]
....x...X......X.......XX........X.x....X...X...X............X.X....X... [ 11%]
.X...X........X...X.xXX..XX.....X....x......X.x.X.X....X.X.X....xx...X.X [ 12%]
XX......x...X.X.....X..X.....XX.....X..X..........X...X..X..XX..X....... [ 12%]
...........X...XX.X.....X.............XX...........X........xX...X...... [ 12%]
...X...x....X............X..X.X..X......x...X.........X..X..X.X......... [ 13%]
......X..X.....X..x....X.X...X..X......X...............X..X....X.XX..... [ 13%]
.x.........XX.....X........X............X........X...........X.....X.... [ 14%]
........x..X...X......X.X..............X..x....X....................xX.x [ 14%]
xX.X.............X....X...x.X........XX.......X....X.xxx....X....X.....x [ 14%]
.X..x....................X..x......X..Xx....X............x......X...x..X [ 15%]
..........Xx...X.....x.X.........X..XX............X.........X.X.X.X..... [ 15%]
...........X...XX....................X.X..X................X..X......... [ 15%]
.................X.............................X...................X.... [ 16%]
........................................................................ [ 16%]
..........................................................x............. [ 17%]
................s....................................................... [ 17%]
.........x.....................X........................X............... [ 17%]
............X..............................X.............s.............X [ 18%]
........................................................................ [ 18%]
...x.................................................................... [ 18%]
........................................................................ [ 19%]
........................................................................ [ 19%]
........................................................................ [ 20%]
........................................................................ [ 20%]
........................................................................ [ 20%]
......................................................................... [ 21%]
........................................................................ [ 21%]
....................................................................X... [ 21%]
.........ssssssssssssssssss......X...................X.................. [ 22%]
...............................X............................X........... [ 22%]
.........X...............................................x.............. [ 23%]
........................................................................ [ 23%]
........................................................................ [ 23%]
........................................................................ [ 24%]
........................................................................ [ 24%]
........................................................................ [ 24%]
.............x....X.........X......X...........X........X.x............. [ 25%]
....X........X.......X....X........x..xXX.X...XX...X........X.....XX.... [ 25%]
..XX.........x...X.....X......X..X...X.................................. [ 26%]
....................................................x................... [ 26%]
........X...............................X...................x........... [ 26%]
..X.x.......Xx..X.x....X................x.X........X..x.........X....... [ 27%]
.....X................XX...X....X.........X.X...x....X..X.......XX....X. [ 27%]
....X........................X......X.......X.x......................... [ 28%]
........................................................................ [ 28%]
......................................................................... [ 28%]
........................................................................ [ 29%]
........................................................................ [ 29%]
........................................................................ [ 29%]
...................................................x.................... [ 30%]
........................................................................ [ 30%]
........................................................................ [ 31%]
........................................................................ [ 31%]
........................................................................ [ 31%]
........................................................................ [ 32%]
........................................................................ [ 32%]
........................................................................ [ 32%]
........................................................................ [ 33%]
............................................s........................... [ 33%]
........................................................................ [ 34%]
...................X.................................................... [ 34%]
........................................................................ [ 34%]
........................................................................ [ 35%]
........................................................................ [ 35%]
........................................................................ [ 35%]
......................................................................... [ 36%]
........................................................................ [ 36%]
........................................................................ [ 37%]
........................................................................ [ 37%]
........................................................................ [ 37%]
........................................................................ [ 38%]
........................................................................ [ 38%]
........................................................................ [ 38%]
........................................................................ [ 39%]
........................................................................ [ 39%]
........................................................................ [ 40%]
........................................................................ [ 40%]
........................................................................ [ 40%]
........................................................................ [ 41%]
........................................................................ [ 41%]
........................................................................ [ 42%]
........................................................................ [ 42%]
........................................................................ [ 42%]
......................................................................... [ 43%]
........................................................................ [ 43%]
........................................................................ [ 43%]
........................................................................ [ 44%]
........................................................................ [ 44%]
........................................................................ [ 45%]
........................................................................ [ 45%]
........................................................................ [ 45%]
........................................................................ [ 46%]
........................................................................ [ 46%]
........................................................................ [ 46%]
........................................................................ [ 47%]
......................................................................... [ 47%]
........................................................................ [ 48%]
........................................................................ [ 48%]
........................................................................ [ 48%]
........................................................................ [ 49%]
........................................................................ [ 49%]
........................................................................ [ 49%]
........................................................................ [ 50%]
........................................................................ [ 50%]
........................................................................ [ 51%]
........................................................................ [ 51%]
........................................................................ [ 51%]
......................................................................... [ 52%]
........................................................................ [ 52%]
........................................................................ [ 53%]
........................................................................ [ 53%]
........................................................................ [ 53%]
........................................................................ [ 54%]
........................................................................ [ 54%]
......................................................................... [ 54%]
........................................................................ [ 55%]
........................................................................ [ 55%]
........................................................................ [ 56%]
........................................................................ [ 56%]
......................................................................... [ 56%]
........................................................................ [ 57%]
........................................................................ [ 57%]
........................................................................ [ 57%]
........................................................................ [ 58%]
........................................................................ [ 58%]
........................................................................ [ 59%]
........................................................................ [ 59%]
........................................................................ [ 59%]
........................................................................ [ 60%]
........................................................................ [ 60%]
......................................................................... [ 60%]
........................................................................ [ 61%]
........................................................................ [ 61%]
........................................................................ [ 62%]
........................................................................ [ 62%]
........................................................................ [ 62%]
........................................................................ [ 63%]
........................................................................ [ 63%]
........................................................................ [ 63%]
........................................................................ [ 64%]
........................................................................ [ 64%]
........................................................................ [ 65%]
........................................................................ [ 65%]
........................................................................ [ 65%]
........................................................................ [ 66%]
........................................................................ [ 66%]
........................................................................ [ 67%]
........................................................................ [ 67%]
........................................................................ [ 67%]
......................................................................... [ 68%]
........................................................................ [ 68%]
........................................................................ [ 68%]
........................................................................ [ 69%]
........................................................................ [ 69%]
........................................................................ [ 70%]
........................................................................ [ 70%]
........................................................................ [ 70%]
........................................................................ [ 71%]
........................................................................ [ 71%]
......................................................................... [ 71%]
........................................................................ [ 72%]
........................................................................ [ 72%]
.......................................................................... [ 73%]
........................................................................ [ 73%]
........................................................................ [ 73%]
......................................................................... [ 74%]
........................................................................ [ 74%]
........................................................................ [ 74%]
........................................................................ [ 75%]
........................................................................ [ 75%]
........................................................................ [ 76%]
........................................................................ [ 76%]
........................................................................ [ 76%]
........................................................................ [ 77%]
........................................................................ [ 77%]
........................................................................ [ 78%]
........................................................................ [ 78%]
........................................................................ [ 78%]
........................................................................ [ 79%]
........................................................................ [ 79%]
........................................................................ [ 79%]
........................................................................ [ 80%]
........................................................................ [ 80%]
........................................................................ [ 81%]
........................................................................ [ 81%]
........................................................................ [ 81%]
........................................................................ [ 82%]
........................................................................ [ 82%]
........................................................................ [ 82%]
........................................................................ [ 83%]
......................................................................... [ 83%]
........................................................................ [ 84%]
......................................................................... [ 84%]
........................................................................ [ 84%]
......................................................................... [ 85%]
......................................................................... [ 85%]
......................................................................... [ 85%]
........................................................................ [ 86%]
........................................................................ [ 86%]
......................................................................... [ 87%]
........................................................................ [ 87%]
........................................................................ [ 87%]
........................................................................ [ 88%]
........................................................................ [ 88%]
........................................................................ [ 89%]
........................................................................ [ 89%]
........................................................................ [ 89%]
........................................................................ [ 90%]
......................................................................... [ 90%]
........................................................................ [ 90%]
........................................................................ [ 91%]
......................................................................... [ 91%]
.......ss.s............................................................. [ 92%]
................................................................x........ [ 92%]
........X...........X..X.............Xx..............x.................x [ 92%]
....................s.s.......s............s............................ [ 93%]
........................................................................ [ 93%]
........................................................................ [ 93%]
........................................................................ [ 94%]
........................................................................ [ 94%]
........................................................................ [ 95%]
........................................................................ [ 95%]
........................................................................ [ 95%]
........................................................................ [ 96%]
........................................................................ [ 96%]
........................................................................ [ 96%]
.......................................................x..x...x......... [ 97%]
.....x....xx........x......................x............................ [ 97%]
........................................................................ [ 98%]
........................................................................ [ 98%]
........................................................................ [ 98%]
........................................................................ [ 99%]
........................................................................ [ 99%]
....................................................................     [100%]

----------- coverage: platform linux, python 3.7.7-final-0 -----------
Name                                                               Stmts   Miss  Cover
--------------------------------------------------------------------------------------
modin/__init__.py                                                     76     38    50%
modin/_version.py                                                    272    172    37%
modin/apply_license_header.py                                         19     19     0%
modin/backends/__init__.py                                             0      0   100%
modin/backends/base/__init__.py                                        0      0   100%
modin/backends/base/query_compiler.py                                130      0   100%
modin/backends/pandas/__init__.py                                      0      0   100%
modin/backends/pandas/parsers.py                                     207    119    43%
modin/backends/pandas/query_compiler.py                              841    166    80%
modin/data_management/__init__.py                                      0      0   100%
modin/data_management/dispatcher.py                                   78     16    79%
modin/data_management/factories.py                                    85     26    69%
modin/data_management/functions/__init__.py                            7      0   100%
modin/data_management/functions/binary_function.py                    21      0   100%
modin/data_management/functions/foldfunction.py                        6      0   100%
modin/data_management/functions/function.py                            6      1    83%
modin/data_management/functions/groupby_function.py                   50     36    28%
modin/data_management/functions/mapfunction.py                         6      0   100%
modin/data_management/functions/mapreducefunction.py                   9      0   100%
modin/data_management/functions/reductionfunction.py                   6      0   100%
modin/data_management/utils.py                                        32     14    56%
modin/engines/__init__.py                                              0      0   100%
modin/engines/base/__init__.py                                         0      0   100%
modin/engines/base/frame/__init__.py                                   0      0   100%
modin/engines/base/frame/axis_partition.py                            45     30    33%
modin/engines/base/frame/data.py                                     516     42    92%
modin/engines/base/frame/partition.py                                  1      0   100%
modin/engines/base/frame/partition_manager.py                        184     38    79%
modin/engines/base/io/__init__.py                                     12      0   100%
modin/engines/base/io/column_stores/__init__.py                        0      0   100%
modin/engines/base/io/column_stores/column_store_reader.py            40      0   100%
modin/engines/base/io/column_stores/feather_reader.py                  9      0   100%
modin/engines/base/io/column_stores/hdf_reader.py                      3      0   100%
modin/engines/base/io/column_stores/parquet_reader.py                 34      1    97%
modin/engines/base/io/file_reader.py                                  85      7    92%
modin/engines/base/io/io.py                                          110     45    59%
modin/engines/base/io/sql/__init__.py                                  0      0   100%
modin/engines/base/io/sql/sql_reader.py                               39      1    97%
modin/engines/base/io/text/__init__.py                                 0      0   100%
modin/engines/base/io/text/csv_reader.py                             112      2    98%
modin/engines/base/io/text/excel_reader.py                           106      9    92%
modin/engines/base/io/text/fwf_reader.py                             115     16    86%
modin/engines/base/io/text/json_reader.py                             50      2    96%
modin/engines/base/io/text/text_file_reader.py                        34      1    97%
modin/engines/base/series/__init__.py                                  0      0   100%
modin/engines/dask/__init__.py                                         0      0   100%
modin/engines/dask/pandas_on_dask/__init__.py                          0      0   100%
modin/engines/dask/pandas_on_dask/frame/__init__.py                    0      0   100%
modin/engines/dask/pandas_on_dask/frame/axis_partition.py             27     27     0%
modin/engines/dask/pandas_on_dask/frame/data.py                       15     15     0%
modin/engines/dask/pandas_on_dask/frame/partition.py                  75     75     0%
modin/engines/dask/pandas_on_dask/frame/partition_manager.py          44     44     0%
modin/engines/dask/pandas_on_dask/io.py                               17     17     0%
modin/engines/dask/pandas_on_dask/series/__init__.py                   0      0   100%
modin/engines/dask/task_wrapper.py                                     9      9     0%
modin/engines/python/__init__.py                                       0      0   100%
modin/engines/python/pandas_on_python/__init__.py                      0      0   100%
modin/engines/python/pandas_on_python/frame/__init__.py                0      0   100%
modin/engines/python/pandas_on_python/frame/axis_partition.py         14     14     0%
modin/engines/python/pandas_on_python/frame/data.py                    4      4     0%
modin/engines/python/pandas_on_python/frame/partition.py              65     65     0%
modin/engines/python/pandas_on_python/frame/partition_manager.py       7      7     0%
modin/engines/python/pandas_on_python/io.py                            6      6     0%
modin/engines/python/pandas_on_python/series/__init__.py               0      0   100%
modin/engines/ray/__init__.py                                          0      0   100%
modin/engines/ray/generic/__init__.py                                  0      0   100%
modin/engines/ray/generic/frame/__init__.py                            0      0   100%
modin/engines/ray/generic/frame/partition_manager.py                  10      0   100%
modin/engines/ray/generic/io.py                                       14      3    79%
modin/engines/ray/generic/series/__init__.py                           0      0   100%
modin/engines/ray/pandas_on_ray/__init__.py                            0      0   100%
modin/engines/ray/pandas_on_ray/frame/__init__.py                      0      0   100%
modin/engines/ray/pandas_on_ray/frame/axis_partition.py               22      0   100%
modin/engines/ray/pandas_on_ray/frame/data.py                         11      3    73%
modin/engines/ray/pandas_on_ray/frame/partition.py                    86      7    92%
modin/engines/ray/pandas_on_ray/frame/partition_manager.py            43     16    63%
modin/engines/ray/pandas_on_ray/io.py                                 18      0   100%
modin/engines/ray/pandas_on_ray/series/__init__.py                     0      0   100%
modin/engines/ray/task_wrapper.py                                      7      0   100%
modin/engines/ray/utils.py                                            52      9    83%
modin/error_message.py                                                27      2    93%
modin/experimental/__init__.py                                         0      0   100%
modin/experimental/cloud/__init__.py                                   6      6     0%
modin/experimental/cloud/base.py                                      36     36     0%
modin/experimental/cloud/cluster.py                                   90     90     0%
modin/experimental/cloud/connection.py                                98     98     0%
modin/experimental/cloud/rayscale.py                                 107    107     0%
modin/experimental/engines/__init__.py                                 0      0   100%
modin/experimental/engines/pandas_on_ray/__init__.py                   0      0   100%
modin/experimental/engines/pandas_on_ray/io_exp.py                    38     38     0%
modin/experimental/engines/pandas_on_ray/sql.py                       66     66     0%
modin/experimental/pandas/__init__.py                                  6      6     0%
modin/experimental/pandas/io_exp.py                                    7      7     0%
modin/pandas/__init__.py                                              38      3    92%
modin/pandas/base.py                                                1213     99    92%
modin/pandas/concat.py                                                58      5    91%
modin/pandas/dataframe.py                                            870     95    89%
modin/pandas/datetimes.py                                              7      0   100%
modin/pandas/general.py                                               53      3    94%
modin/pandas/groupby.py                                              291     38    87%
modin/pandas/indexing.py                                             209     32    85%
modin/pandas/io.py                                                   147     11    93%
modin/pandas/iterator.py                                              17      0   100%
modin/pandas/reshape.py                                               30      0   100%
modin/pandas/series.py                                               945     80    92%
modin/pandas/utils.py                                                 28      3    89%
--------------------------------------------------------------------------------------
TOTAL                                                               8279   1947    76%

= 18376 passed, 31 skipped, 105 xfailed, 515 xpassed, 32699 warnings in 1000.92s (0:16:40) =

TOTAL                                                               8279   1947    76%

= 18376 passed, 31 skipped, 105 xfailed, 515 xpassed, 32699 warnings in 1000.92s (0:16:40) =

Copy link
Collaborator

@devin-petersohn devin-petersohn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you have performance on this? Looking through the implementation, it might be expensive.

@dchigarev
Copy link
Collaborator Author

@devin-petersohn Thanks for your comments, definitely first implementation were extremely slow because of inserting column with numpy array and sorting indices via sort_index. Now for restoring pandas-order of output it uses modin_frame.reorder_labels, but it's still slower than pandas:

500000x45 ~ 74Mb Dataset

Pandas: 1.0365909719839692
Modin: 4.968821498565376

time of execution reorder_labels inside
modin melt implementation: 4.164067830890417

As we see from the results, native modin frame function reorder_labels is a bottleneck here.

Here is the results without restoring pandas-order:

500000x45 ~ 74Mb Dataset

Pandas: 1.0422626351937652
Modin: 0.5023592244833708
How it was measured
import numpy as np
import string
import csv
import os
from timeit import default_timer as timer

IS_PANDAS = True
RAND_LOW = -100
RAND_HIGH = 100
N = 500000
M = 45
TEST_FILENAME = os.path.abspath(f"int_dataset-{N},{M},{RAND_LOW},{RAND_HIGH}.csv")


def generate_data_file(filename, row_n, col_n):
    letters = list(string.ascii_letters)
    columns = [
        "".join(np.random.choice(letters) for _ in np.arange(10))
        for _ in np.arange(col_n)
    ]

    with open(filename, "w") as file:
        writer = csv.writer(file, delimiter=",")
        writer.writerow(columns)
        for _ in np.arange(row_n):
            writer.writerow(np.random.randint(RAND_LOW, RAND_HIGH, col_n))


if __name__ == "__main__":
    import pandas
    import modin.pandas as pd

    if not os.path.exists(TEST_FILENAME):
        generate_data_file(TEST_FILENAME, N, M)

    if IS_PANDAS:
        pd_df = pandas.read_csv(TEST_FILENAME)
        t1_pd = timer()
        pd_df.melt()
        t2_pd = timer()

        print("Pandas:", t2_pd - t1_pd)

    md_df = pd.read_csv(TEST_FILENAME)
    t1_md = timer()
    md_df.melt()
    t2_md = timer()

    print("Modin:", t2_md - t1_md)
What is restoring pandas-order?

For applying melt function we must get information about full row axis, so it's implemented via modin_frame._apply_full_axis(1, lambda df: df.melt()) and because function applied only for row partitions, we would get a different order of rows as the result.

For example we have DataFrame splitter into row partitions like that:

   first     last  weight  height
0   John    Smith     5.0     130
1   Mary  Johnson     6.0     140
----------------------------------
2    Bob    Jones     5.5     150
3  Andry    Brown     4.2     160

and then we will apply melt(id_vars=["first", "last"])

Result of applying			Result of applying
for row partitions:			for the whole dataframe:

   first     last variable  value	   first     last variable  value	
0   John    Smith   weight    5.0	0   John    Smith   weight    5.0
1   Mary  Johnson   weight    6.0	1   Mary  Johnson   weight    6.0
2   John    Smith   height  130.0	2    Bob    Jones   weight    5.5
3   Mary  Johnson   height  140.0	3  Andry    Brown   weight    4.2
---------------------------------
0    Bob    Jones   weight    5.5	4   John    Smith   height  130.0
1  Andry    Brown   weight    4.2	5   Mary  Johnson   height  140.0
2    Bob    Jones   height  150.0	6    Bob    Jones   height  150.0
3  Andry    Brown   height  160.0	7  Andry    Brown   height  160.0

Restoring order from right result in left result is what I mean under restoring pandas-order

Restoring order is the most expensive operation because we must have knowledge about the whole column axis, which is the longest one in case of melt output, so the reordering will take longer that melt itself.

So, @devin-petersohn is it acceptable for modin to output shuffled data in such functions or modin has a pattern for fast reordering which I'm don't know?

@anmyachev
Copy link
Collaborator

@dchigarev maybe you can found some useful things in #725

@anmyachev anmyachev added the P1 Important tasks that we should complete soon label Jul 20, 2020
@anmyachev anmyachev added this to the 0.8.0 milestone Jul 20, 2020
Copy link
Collaborator

@devin-petersohn devin-petersohn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

_apply_full_axis is asynchronous. Timing before and after isn't enough, you also have to print the result to block. It is 4+x slower than a MapFunction.

I left some questions for you.

@dchigarev
Copy link
Collaborator Author

@devin-petersohn I've reimplemented melt via apply_full_axis_select_indices and got this results

45x500000 (5 values in a different partitions)
Pandas: 0.1547
Modin (8 cores): 0.1028
Modin (112 cores): 0.0514
Modin default_to_pandas: 2.0192

45x500000 (all values)
Pandas: 0.4206
Modin (8 cores): 0.9479
Modin (112 cores): 0.8355
Modin default_to_pandas: 3.3246

I've also fixed a strange bug in apply_func_to_select_indices_along_full_axis, without this fix I was getting the same times when applying melt function for only one column partition and for the whole column partitions. Does cls.column_partitions() do any hard work if we don't apply a function to that column partition? If yes, then for me it's not obvious and I guess it should be mentioned in documentation.

@dchigarev dchigarev changed the title Melt function implementation [Feature] Melt function implementation Jul 22, 2020
Copy link
Collaborator

@devin-petersohn devin-petersohn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@dchigarev Yes, if there is no work being done, the column partition is still shuffled together to the same worker, which is some significant work.

Thanks for running the performance numbers on this. Is there a reason this cannot be done by applying the function to row partitions instead of column partitions?

@dchigarev
Copy link
Collaborator Author

@dchigarev Yes, if there is no work being done, the column partition is still shuffled together to the same worker, which is some significant work.

Thanks for running the performance numbers on this. Is there a reason this cannot be done by applying the function to row partitions instead of column partitions?

@devin-petersohn It could be implemented via applying to row partitions, but there is a two details:

  1. melt is designed to transform dataframe from wide to long format, since we have wide dataframe with short columns it will be more scalable if we'll apply function to column partitions, not to rows
  2. Applying melt to rows leads to losing correct rows order in the result, that problem was described in that comment. So we will have to do slow reordering. Unfortunately, I still have no idea how to do it fast with the current modin_frame API

@devin-petersohn
Copy link
Collaborator

Applying melt to rows leads to losing correct rows order in the result, that problem was described in that comment. So we will have to do slow reordering. Unfortunately, I still have no idea how to do it fast with the current modin_frame API

Ah, I forgot about that, sorry. The reordering rows can happen via sort, which isn't implemented scalably yet, but should be soon. It is okay to rely on functionality that isn't implemented yet. We could also perform the sort first, which would probably perform better. What do you think about this?

@dchigarev
Copy link
Collaborator Author

@devin-petersohn what do you mean under "perform the sort first"? The problem is that after applying melt rows are sorted correctly, but only for every independent partition, so it requires some kind of merge phase to sort it globally. Also as you can see in the example above, rows sorted not in alphabetic order, but in the order when they were columns, will it be possible to pass a custom order function with the new implemented sort?

And another question, I don't know how data scientists use melt, but in my suggestions, it is transforming wide and short dataframes to a long format (correct me if I'm wrong), so in that case, applying to columns will be more efficient?

@devin-petersohn
Copy link
Collaborator

@dchigarev It will scale better if operations are performed across the columns axis=1. We can throw a Warning that mentions that the order may not match pandas exactly for a first pass so that we do not pay the heavy penalty for reordering the rows. Please create an issue for the ordering of the rows in melt implementation so we can fix it later.

Signed-off-by: Dmitry Chigarev <dmitry.chigarev@intel.com>
Signed-off-by: Dmitry Chigarev <dmitry.chigarev@intel.com>
Signed-off-by: Dmitry Chigarev <dmitry.chigarev@intel.com>
@dchigarev
Copy link
Collaborator Author

@devin-petersohn I've reimplemented melt with applying function to selected indices + broadcasting columns from id_vars to every partition. This is the results:

500000x128 (all values)
Pandas: 2.9566
Modin (8 cores): 0.6220
Modin (112 cores): 0.5468

500000x128 (5 values in a different partitions)
Pandas: 0.1019
Modin (8 cores): 0.0893
Modin (112 cores): 0.3803 (re-runed many times, but still getting 
                                 that weird result for 112 cores)

Also added a warning of incorrect order of rows and created an issue, to we could fix this later (#1793)

@devin-petersohn
Copy link
Collaborator

Thanks @dchigarev! Were those times including a print statement to ensure computation was finished?

@dchigarev
Copy link
Collaborator Author

@devin-petersohn It's shamable, but it seems that I forgot to add repr to the result to force materialization in my measurement script, so all measurements above are not relevant. Time measurements with repr are not so magical:

Pandas: 2.9670
Modin (8 cores): 1.5371
Modin (112 cores): 1.1135

@devin-petersohn
Copy link
Collaborator

@dchigarev 500,000 rows is not very many, so that speedup is quite good, especially on 128 columns.

@devin-petersohn
Copy link
Collaborator

@dchigarev The implementation looks good, I have retriggered GitHub Actions because it showed a -40% coverage drop.

@dchigarev
Copy link
Collaborator Author

@devin-petersohn now codecov check is okay, I guess

Copy link
Collaborator

@devin-petersohn devin-petersohn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @dchigarev, looks great!

@devin-petersohn devin-petersohn changed the title [Feature] Melt function implementation FEAT-#1205: melt implementation Jul 24, 2020
@devin-petersohn devin-petersohn merged commit cf695b3 into modin-project:master Jul 24, 2020
aregm pushed a commit to aregm/modin that referenced this pull request Sep 16, 2020
Signed-off-by: Dmitry Chigarev <dmitry.chigarev@intel.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

P1 Important tasks that we should complete soon Ready for review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

melt function implementation

4 participants