==10830== Memcheck, a memory error detector ==10830== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==10830== Using Valgrind-3.15.0 and LibVEX; rerun with -h for copyright info ==10830== Command: /data/blackswan/ripley/R/R-devel-vg/bin/exec/R --vanilla --encoding=UTF-8 ==10830== R Under development (unstable) (2020-01-11 r77654) -- "Unsuffered Consequences" Copyright (C) 2020 The R Foundation for Statistical Computing Platform: x86_64-pc-linux-gnu (64-bit) R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. Natural language support but running in an English locale R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > pkgname <- "bikedata" > source(file.path(R.home("share"), "R", "examples-header.R")) > options(warn = 1) > library('bikedata') Data for London, U.K. powered by TfL Open Data: Contains OS data Ⓒ Crown copyright and database rights 2016 Data for New York City provided and owned by: NYC Bike Share, LLC and Jersey City Bike Share, LLC ("Bikeshare") see https://www.citibikenyc.com/data-sharing-policy Data for Washington DC (Captialbikeshare), Chiago (Divvybikes) and Boston (Hubway) provided and owned by Motivate International Inc. see https://www.capitalbikeshare.com/data-license-agreement and https://www.divvybikes.com/data-license-agreement and https://www.thehubway.com/data-license-agreement Nice Ride Minnesota license https://assets.niceridemn.com/data-license-agreement.html > > base::assign(".oldSearch", base::search(), pos = 'CheckExEnv') > base::assign(".old_wd", base::getwd(), pos = 'CheckExEnv') > cleanEx() > nameEx("bike_cities") > ### * bike_cities > > flush(stderr()); flush(stdout()) > > ### Name: bike_cities > ### Title: List of cities currently included in bikedata > ### Aliases: bike_cities > > ### ** Examples > > bike_cities () city city_name bike_system 1 bo Boston Hubway 2 ch Chicago Divvy 3 dc Washington DC CapitalBikeShare 4 gu Guadalajara mibici 5 la Los Angeles Metro 6 lo London Santander 7 mo Montreal Bixi 8 mn Minneapolis NiceRide 9 ny New York Citibike 10 ph Philadelphia Indego 11 sf Bay Area FordGoBike > > > > cleanEx() > nameEx("bike_daily_trips") > ### * bike_daily_trips > > flush(stderr()); flush(stdout()) > > ### Name: bike_daily_trips > ### Title: Extract daily trip counts for all stations > ### Aliases: bike_daily_trips > > ### ** Examples > > ## Not run: > ##D bike_write_test_data () # by default in tempdir () > ##D # dl_bikedata (city = 'la', data_dir = data_dir) # or download some real data! > ##D store_bikedata (data_dir = tempdir (), bikedb = 'testdb') > ##D # create database indexes for quicker access: > ##D index_bikedata_db (bikedb = 'testdb') > ##D > ##D bike_daily_trips (bikedb = 'testdb', city = 'ny') > ##D bike_daily_trips (bikedb = 'testdb', city = 'ny', member = TRUE) > ##D bike_daily_trips (bikedb = 'testdb', city = 'ny', gender = 'f') > ##D bike_daily_trips (bikedb = 'testdb', city = 'ny', station = '173', > ##D gender = 1) > ##D > ##D bike_rm_test_data () > ##D bike_rm_db ('testdb') > ##D # don't forget to remove real data! > ##D # file.remove (list.files ('.', pattern = '.zip')) > ## End(Not run) > > > > cleanEx() > nameEx("bike_datelimits") > ### * bike_datelimits > > flush(stderr()); flush(stdout()) > > ### Name: bike_datelimits > ### Title: Extract date-time limits from trip database > ### Aliases: bike_datelimits > > ### ** Examples > > data_dir <- tempdir () > bike_write_test_data (data_dir = data_dir) adding: tmp/RtmpEUyEYc/Divvy_Trips_sample/ (stored 0%) adding: tmp/RtmpEUyEYc/Divvy_Trips_sample/Divvy_Trips_sample.csv (deflated 79%) adding: tmp/RtmpEUyEYc/Divvy_Trips_sample/Divvy_Stations.csv (deflated 68%) adding: tmp/RtmpEUyEYc/201701-hubway-tripdata.csv (deflated 81%) adding: tmp/RtmpEUyEYc/201801_hubway_tripdata.csv (deflated 81%) adding: tmp/RtmpEUyEYc/Nice_Ride_data_2012_season/ (stored 0%) adding: tmp/RtmpEUyEYc/Nice_Ride_data_2012_season/Nice_Ride_trip_history_2012_season.csv (deflated 81%) adding: tmp/RtmpEUyEYc/Nice_Ride_data_2012_season/Nice_Ride_2012-station_locations .csv (deflated 62%) adding: tmp/RtmpEUyEYc/2017Q1-capitalbikeshare-tripdata-temp.csv (deflated 80%) adding: tmp/RtmpEUyEYc/la_metro_gbfs_trips_Q1_2017.csv (deflated 85%) adding: tmp/RtmpEUyEYc/201612-citibike-tripdata.csv (deflated 74%) > # dl_bikedata (city = 'la', data_dir = data_dir) # or download some real data! > # Remove one London file that triggers an API call which may fail tests: > file.remove (file.path (tempdir(), "01aJourneyDataExtract10Jan16-23Jan16.csv")) [1] TRUE > bikedb <- file.path (data_dir, 'testdb') > store_bikedata (data_dir = data_dir, bikedb = bikedb) Creating sqlite3 database Unzipping raw data files for bo ... Reading files for bo ... reading file 1/3: /tmp/RtmpEUyEYc/hubway_Trips_2012.csv ==10830== Conditional jump or move depends on uninitialised value(s) ==10830== at 0x17238276: city::read_one_line_generic(sqlite3_stmt*, char*, std::map, std::allocator >, std::__cxx11::basic_string, std::allocator >, std::less, std::allocator > >, std::allocator, std::allocator > const, std::__cxx11::basic_string, std::allocator > > > >*, std::__cxx11::basic_string, std::allocator >, HeaderStruct const&, std::map, std::allocator >, std::__cxx11::basic_string, std::allocator >, std::less, std::allocator > >, std::allocator, std::allocator > const, std::__cxx11::basic_string, std::allocator > > > >&) (packages/tests-vg/bikedata/src/read-city-files.cpp:138) ==10830== by 0x17245118: rcpp_import_to_trip_table(char const*, Rcpp::Vector<16, Rcpp::PreserveStorage>, std::__cxx11::basic_string, std::allocator >, std::__cxx11::basic_string, std::allocator >, bool, bool) (packages/tests-vg/bikedata/src/sqlite3db-add-data.cpp:170) ==10830== by 0x1722D64A: _bikedata_rcpp_import_to_trip_table (packages/tests-vg/bikedata/src/RcppExports.cpp:33) ==10830== by 0x49BA93: R_doDotCall (svn/R-devel/src/main/dotcode.c:614) ==10830== by 0x4D8276: bcEval (svn/R-devel/src/main/eval.c:7610) ==10830== by 0x4E8197: Rf_eval (svn/R-devel/src/main/eval.c:688) ==10830== by 0x4E9D56: R_execClosure (svn/R-devel/src/main/eval.c:1853) ==10830== by 0x4EAB33: Rf_applyClosure (svn/R-devel/src/main/eval.c:1779) ==10830== by 0x4DB64D: bcEval (svn/R-devel/src/main/eval.c:7022) ==10830== by 0x4E8197: Rf_eval (svn/R-devel/src/main/eval.c:688) ==10830== by 0x4E9D56: R_execClosure (svn/R-devel/src/main/eval.c:1853) ==10830== by 0x4EAB33: Rf_applyClosure (svn/R-devel/src/main/eval.c:1779) ==10830== Uninitialised value was created by a heap allocation ==10830== at 0x4838E86: operator new(unsigned long) (/builddir/build/BUILD/valgrind-3.15.0/coregrind/m_replacemalloc/vg_replace_malloc.c:344) ==10830== by 0x17245984: allocate (/usr/include/c++/9/ext/new_allocator.h:114) ==10830== by 0x17245984: allocate (/usr/include/c++/9/bits/alloc_traits.h:444) ==10830== by 0x17245984: _M_allocate (/usr/include/c++/9/bits/stl_bvector.h:534) ==10830== by 0x17245984: std::vector >::_M_fill_insert(std::_Bit_iterator, unsigned long, bool) (/usr/include/c++/9/bits/vector.tcc:840) ==10830== by 0x172433B7: insert (/usr/include/c++/9/bits/stl_bvector.h:1025) ==10830== by 0x172433B7: resize (/usr/include/c++/9/bits/stl_bvector.h:1066) ==10830== by 0x172433B7: db_add::get_field_quotes(std::__cxx11::basic_string, std::allocator >, HeaderStruct&) (packages/tests-vg/bikedata/src/sqlite3db-add-data.cpp:358) ==10830== by 0x17244FEA: rcpp_import_to_trip_table(char const*, Rcpp::Vector<16, Rcpp::PreserveStorage>, std::__cxx11::basic_string, std::allocator >, std::__cxx11::basic_string, std::allocator >, bool, bool) (packages/tests-vg/bikedata/src/sqlite3db-add-data.cpp:150) ==10830== by 0x1722D64A: _bikedata_rcpp_import_to_trip_table (packages/tests-vg/bikedata/src/RcppExports.cpp:33) ==10830== by 0x49BA93: R_doDotCall (svn/R-devel/src/main/dotcode.c:614) ==10830== by 0x4D8276: bcEval (svn/R-devel/src/main/eval.c:7610) ==10830== by 0x4E8197: Rf_eval (svn/R-devel/src/main/eval.c:688) ==10830== by 0x4E9D56: R_execClosure (svn/R-devel/src/main/eval.c:1853) ==10830== by 0x4EAB33: Rf_applyClosure (svn/R-devel/src/main/eval.c:1779) ==10830== by 0x4DB64D: bcEval (svn/R-devel/src/main/eval.c:7022) ==10830== by 0x4E8197: Rf_eval (svn/R-devel/src/main/eval.c:688) ==10830== reading file 2/3: /tmp/RtmpEUyEYc/201701-hubway-tripdata.csv reading file 3/3: /tmp/RtmpEUyEYc/201801_hubway_tripdata.csv Trips read for bo = 600 Unzipping raw data files for ch ... Reading files for ch ... reading file 1/1: /tmp/RtmpEUyEYc/Divvy_Trips_sample.csv ==10830== Conditional jump or move depends on uninitialised value(s) ==10830== at 0x17237F43: city::read_one_line_generic(sqlite3_stmt*, char*, std::map, std::allocator >, std::__cxx11::basic_string, std::allocator >, std::less, std::allocator > >, std::allocator, std::allocator > const, std::__cxx11::basic_string, std::allocator > > > >*, std::__cxx11::basic_string, std::allocator >, HeaderStruct const&, std::map, std::allocator >, std::__cxx11::basic_string, std::allocator >, std::less, std::allocator > >, std::allocator, std::allocator > const, std::__cxx11::basic_string, std::allocator > > > >&) (packages/tests-vg/bikedata/src/read-city-files.cpp:132) ==10830== by 0x17245118: rcpp_import_to_trip_table(char const*, Rcpp::Vector<16, Rcpp::PreserveStorage>, std::__cxx11::basic_string, std::allocator >, std::__cxx11::basic_string, std::allocator >, bool, bool) (packages/tests-vg/bikedata/src/sqlite3db-add-data.cpp:170) ==10830== by 0x1722D64A: _bikedata_rcpp_import_to_trip_table (packages/tests-vg/bikedata/src/RcppExports.cpp:33) ==10830== by 0x49BA93: R_doDotCall (svn/R-devel/src/main/dotcode.c:614) ==10830== by 0x4D8276: bcEval (svn/R-devel/src/main/eval.c:7610) ==10830== by 0x4E8197: Rf_eval (svn/R-devel/src/main/eval.c:688) ==10830== by 0x4E9D56: R_execClosure (svn/R-devel/src/main/eval.c:1853) ==10830== by 0x4EAB33: Rf_applyClosure (svn/R-devel/src/main/eval.c:1779) ==10830== by 0x4DB64D: bcEval (svn/R-devel/src/main/eval.c:7022) ==10830== by 0x4E8197: Rf_eval (svn/R-devel/src/main/eval.c:688) ==10830== by 0x4E9D56: R_execClosure (svn/R-devel/src/main/eval.c:1853) ==10830== by 0x4EAB33: Rf_applyClosure (svn/R-devel/src/main/eval.c:1779) ==10830== Uninitialised value was created by a heap allocation ==10830== at 0x4838E86: operator new(unsigned long) (/builddir/build/BUILD/valgrind-3.15.0/coregrind/m_replacemalloc/vg_replace_malloc.c:344) ==10830== by 0x17245984: allocate (/usr/include/c++/9/ext/new_allocator.h:114) ==10830== by 0x17245984: allocate (/usr/include/c++/9/bits/alloc_traits.h:444) ==10830== by 0x17245984: _M_allocate (/usr/include/c++/9/bits/stl_bvector.h:534) ==10830== by 0x17245984: std::vector >::_M_fill_insert(std::_Bit_iterator, unsigned long, bool) (/usr/include/c++/9/bits/vector.tcc:840) ==10830== by 0x172433B7: insert (/usr/include/c++/9/bits/stl_bvector.h:1025) ==10830== by 0x172433B7: resize (/usr/include/c++/9/bits/stl_bvector.h:1066) ==10830== by 0x172433B7: db_add::get_field_quotes(std::__cxx11::basic_string, std::allocator >, HeaderStruct&) (packages/tests-vg/bikedata/src/sqlite3db-add-data.cpp:358) ==10830== by 0x17244FEA: rcpp_import_to_trip_table(char const*, Rcpp::Vector<16, Rcpp::PreserveStorage>, std::__cxx11::basic_string, std::allocator >, std::__cxx11::basic_string, std::allocator >, bool, bool) (packages/tests-vg/bikedata/src/sqlite3db-add-data.cpp:150) ==10830== by 0x1722D64A: _bikedata_rcpp_import_to_trip_table (packages/tests-vg/bikedata/src/RcppExports.cpp:33) ==10830== by 0x49BA93: R_doDotCall (svn/R-devel/src/main/dotcode.c:614) ==10830== by 0x4D8276: bcEval (svn/R-devel/src/main/eval.c:7610) ==10830== by 0x4E8197: Rf_eval (svn/R-devel/src/main/eval.c:688) ==10830== by 0x4E9D56: R_execClosure (svn/R-devel/src/main/eval.c:1853) ==10830== by 0x4EAB33: Rf_applyClosure (svn/R-devel/src/main/eval.c:1779) ==10830== by 0x4DB64D: bcEval (svn/R-devel/src/main/eval.c:7022) ==10830== by 0x4E8197: Rf_eval (svn/R-devel/src/main/eval.c:688) ==10830== Trips read for ch = 200 Unzipping raw data files for dc ... Reading files for dc ... reading file 1/1: /tmp/RtmpEUyEYc/2017Q1-capitalbikeshare-tripdata-temp.csv Trips read for dc = 200 Unzipping raw data files for la ... Reading files for la ... reading file 1/1: /tmp/RtmpEUyEYc/la_metro_gbfs_trips_Q1_2017.csv Trips read for la = 198 Unzipping raw data files for mn ... Reading files for mn ... reading file 1/1: /tmp/RtmpEUyEYc/Nice_Ride_trip_history_2012_season.csv Trips read for mn = 200 Unzipping raw data files for ny ... Reading files for ny ... reading file 1/1: /tmp/RtmpEUyEYc/201612-citibike-tripdata.csv Trips read for ny = 200 Total trips read = 1,598 [1] 1598 > # create database indexes for quicker access: > index_bikedata_db (bikedb = bikedb) > > bike_datelimits ('testdb') # overall limits for all cities first last "2012-04-02 13:07:00" "2018-01-02 07:02:04" > bike_datelimits ('testdb', city = 'NYC') first last "2016-12-01 00:00:04" "2016-12-01 01:33:37" > bike_datelimits ('testdb', city = 'los angeles') first last "2017-01-01 00:15:00" "2017-01-01 16:55:00" > > bike_rm_test_data (data_dir = data_dir) [1] 12 > bike_rm_db (bikedb) [1] TRUE > # don't forget to remove real data! > # file.remove (list.files ('.', pattern = '.zip')) > > > > cleanEx() > nameEx("bike_db_totals") > ### * bike_db_totals > > flush(stderr()); flush(stdout()) > > ### Name: bike_db_totals > ### Title: Count number of entries in sqlite3 database tables > ### Aliases: bike_db_totals > > ### ** Examples > > data_dir <- tempdir () > bike_write_test_data (data_dir = data_dir) adding: tmp/RtmpEUyEYc/Divvy_Trips_sample/ (stored 0%) adding: tmp/RtmpEUyEYc/Divvy_Trips_sample/Divvy_Trips_sample.csv (deflated 79%) adding: tmp/RtmpEUyEYc/Divvy_Trips_sample/Divvy_Stations.csv (deflated 68%) adding: tmp/RtmpEUyEYc/201701-hubway-tripdata.csv (deflated 81%) adding: tmp/RtmpEUyEYc/201801_hubway_tripdata.csv (deflated 81%) adding: tmp/RtmpEUyEYc/Nice_Ride_data_2012_season/ (stored 0%) adding: tmp/RtmpEUyEYc/Nice_Ride_data_2012_season/Nice_Ride_trip_history_2012_season.csv (deflated 81%) adding: tmp/RtmpEUyEYc/Nice_Ride_data_2012_season/Nice_Ride_2012-station_locations .csv (deflated 62%) adding: tmp/RtmpEUyEYc/2017Q1-capitalbikeshare-tripdata-temp.csv (deflated 80%) adding: tmp/RtmpEUyEYc/la_metro_gbfs_trips_Q1_2017.csv (deflated 85%) adding: tmp/RtmpEUyEYc/201612-citibike-tripdata.csv (deflated 74%) > bikedb <- file.path (data_dir, 'testdb') > store_bikedata (data_dir = data_dir, bikedb = bikedb) Creating sqlite3 database Unzipping raw data files for bo ... Reading files for bo ... reading file 1/3: /tmp/RtmpEUyEYc/hubway_Trips_2012.csv reading file 2/3: /tmp/RtmpEUyEYc/201701-hubway-tripdata.csv reading file 3/3: /tmp/RtmpEUyEYc/201801_hubway_tripdata.csv Trips read for bo = 600 Unzipping raw data files for ch ... Reading files for ch ... reading file 1/1: /tmp/RtmpEUyEYc/Divvy_Trips_sample.csv Trips read for ch = 200 Unzipping raw data files for dc ... Reading files for dc ... reading file 1/1: /tmp/RtmpEUyEYc/2017Q1-capitalbikeshare-tripdata-temp.csv Trips read for dc = 200 Unzipping raw data files for la ... Reading files for la ... reading file 1/1: /tmp/RtmpEUyEYc/la_metro_gbfs_trips_Q1_2017.csv Trips read for la = 198 Reading files for lo ... getting london stations ...Error in curl::curl_fetch_memory(url, handle = handle) : Timeout was reached: [api.tfl.gov.uk] Resolving timed out after 10000 milliseconds Calls: store_bikedata ... request_fetch -> request_fetch.write_memory -> Execution halted ==10830== ==10830== HEAP SUMMARY: ==10830== in use at exit: 100,351,703 bytes in 20,936 blocks ==10830== total heap usage: 228,497 allocs, 207,561 frees, 248,590,376 bytes allocated ==10830== ==10830== LEAK SUMMARY: ==10830== definitely lost: 0 bytes in 0 blocks ==10830== indirectly lost: 0 bytes in 0 blocks ==10830== possibly lost: 0 bytes in 0 blocks ==10830== still reachable: 100,351,703 bytes in 20,936 blocks ==10830== suppressed: 0 bytes in 0 blocks ==10830== Reachable blocks (those to which a pointer was found) are not shown. ==10830== To see them, rerun with: --leak-check=full --show-leak-kinds=all ==10830== ==10830== For lists of detected and suppressed errors, rerun with: -s ==10830== ERROR SUMMARY: 2400 errors from 2 contexts (suppressed: 0 from 0)