Closed gjgetzinger closed 3 years ago
I missed a feature for that purpose.
Example: When handling HTML files, I used the furrr
package to parallelize the parser and handle data from the HTML file. It happens that, in parallel execution, there was a constant error in one of the nodes when trying to access SQLite. To get around this, I created the following function (in a Web Scraping project) to handle SQLite access errors by the nodes executed by furrr
:
connect_sgbd <- function(sgbd = "sqlite") {
if(sgbd == "sqlite") {
conexao_segura_sqlite <- purrr::safely(DBI::dbConnect)
sqlite_bd <- conexao_segura_sqlite(RSQLite::SQLite(),
dbname = file.path("bd_sqlite",
"bd_tcm_despesas_municipios.db"))
while(is.null(sqlite_bd$result) == TRUE) {
print("Banco de Dados bloqueado - Tentando conectar novamente...")
log_data_time <- log_data_hora()
# Grava uma log em CSV, caso haja problemas em conectar com o SGBD
tibble::tibble(data_time = log_data_time,
nm_log_erro = "Erro ao acesso o SQLite",
sgbd = "sqlite") %>%
readr::write_delim(file.path("bd_sqlite",
"log_sgbd.csv"),
delim = ";",
append = TRUE)
# Tentar novamente a conexão com o BD
sqlite_bd <- conexao_segura_sqlite(RSQLite::SQLite(),
dbname = file.path("bd_sqlite",
"bd_tcm_despesas_municipios.db"))
}
return(sqlite_bd$result)
}
}
As you can see from the code above, the process node run by furrr
keeps trying to access SQLite until it succeeds. So I tried with this script not to interrupt the execution of the nodes and then to complete all Web Scraping handling tasks.
If there was a native function to handle SQLite access errors it would be very useful.
@gjgetzinger: Thanks. This does look useful, would you like to contribute a pull request?
@georgevbsantiago: Sorry, I don't understand this. Could you please translate?
@krlmlr Sure. Would it be ok if I implemented the feature in R? I don't have much of any experience with C++.
I'm not sure if this can be done with R alone. We'll need an entry point in R, but it seems that a part of the functionality will need to be in C/C++.
@gjgetzinger
If you just want a time-out wouldn't PRAGMA busy_timeout
work? (https://www.sqlite.org/pragma.html#pragma_busy_timeout)
With the release of furrr 0.2, parallelization will be easier to perform in R (for basic users).
But how to use furrr 0.2 (ex: furrr :: future_walk
) to write results in RSQLite without hitting the blocking error?
I am trying several alternatives to prevent "Error: database is locked" when running in parallel.
In the reprex below, although print 1 to 30 appears, there are loops that are not registered in SQLite. I still don't know why this failure.
Any suggestions to face this problem?
Reprex example below:
Thanks
library(DBI)
library(RSQLite)
library(furrr)
#> Warning: package 'furrr' was built under R version 4.0.3
#> Carregando pacotes exigidos: future
library(future)
library(magrittr)
#> Warning: package 'magrittr' was built under R version 4.0.3
library(purrr)
#>
#> Attaching package: 'purrr'
#> The following object is masked from 'package:magrittr':
#>
#> set_names
n_teste <- 1:30
connect_sgbd <- function() {
tentativas <- purrr::rate_delay(pause = 0.3,
max_times = 10)
insist_sqlite <- purrr::insistently(DBI::dbConnect,
tentativas,
quiet = FALSE)
conexao <- insist_sqlite(RSQLite::SQLite(),
dbname = file.path("bd_test.db"))
return(conexao)
}
teste_write_sqlite <- function(n_teste) {
tb_teste_iris <- iris %>%
dplyr::mutate(n_loop = n_teste)
tentativas <- purrr::rate_delay(pause = 0.3,
max_times = 10)
insist_write_sqlite <- purrr::insistently(DBI::dbWriteTable,
tentativas,
quiet = FALSE)
conn <- connect_sgbd()
insist_write_sqlite(conn,
"tb_teste_iris",
tb_teste_iris,
append = TRUE)
DBI::dbDisconnect(conn)
print(n_teste)
}
future::plan("multisession",
workers = 5)
furrr::future_walk(n_teste, teste_write_sqlite, .progress = TRUE)
#> [1] 1
#> [1] 2
#> [1] 3
#> [1] 4
#> [1] 5
#> [1] 6
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: UNRELIABLE VALUE: Future ('<none>') unexpectedly generated random
#> numbers without specifying argument 'seed'. There is a risk that those random
#> numbers are not statistically sound and the overall results might be invalid.
#> To fix this, specify 'seed=TRUE'. This ensures that proper, parallel-safe random
#> numbers are produced via the L'Ecuyer-CMRG method. To disable this check, use
#> 'seed=NULL', or set option 'future.rng.onMisuse' to "ignore".
#> [1] 7
#> [1] 8
#> [1] 9
#> [1] 10
#> [1] 11
#> [1] 12
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: Closing open result set, pending rows
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: Closing open result set, pending rows
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: Closing open result set, pending rows
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: Closing open result set, pending rows
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: Closing open result set, pending rows
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: Closing open result set, pending rows
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: Closing open result set, pending rows
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: UNRELIABLE VALUE: Future ('<none>') unexpectedly generated random
#> numbers without specifying argument 'seed'. There is a risk that those random
#> numbers are not statistically sound and the overall results might be invalid.
#> To fix this, specify 'seed=TRUE'. This ensures that proper, parallel-safe random
#> numbers are produced via the L'Ecuyer-CMRG method. To disable this check, use
#> 'seed=NULL', or set option 'future.rng.onMisuse' to "ignore".
#> [1] 13
#> [1] 14
#> [1] 15
#> [1] 16
#> [1] 17
#> [1] 18
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: Closing open result set, pending rows
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: Closing open result set, pending rows
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: UNRELIABLE VALUE: Future ('<none>') unexpectedly generated random
#> numbers without specifying argument 'seed'. There is a risk that those random
#> numbers are not statistically sound and the overall results might be invalid.
#> To fix this, specify 'seed=TRUE'. This ensures that proper, parallel-safe random
#> numbers are produced via the L'Ecuyer-CMRG method. To disable this check, use
#> 'seed=NULL', or set option 'future.rng.onMisuse' to "ignore".
#> [1] 19
#> [1] 20
#> [1] 21
#> [1] 22
#> [1] 23
#> [1] 24
#> Warning: Couldn't set synchronous mode: database is locked
#> Use `synchronous` = NULL to turn off this warning.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: Couldn't set synchronous mode: database is locked
#> Use `synchronous` = NULL to turn off this warning.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: Closing open result set, pending rows
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: UNRELIABLE VALUE: Future ('<none>') unexpectedly generated random
#> numbers without specifying argument 'seed'. There is a risk that those random
#> numbers are not statistically sound and the overall results might be invalid.
#> To fix this, specify 'seed=TRUE'. This ensures that proper, parallel-safe random
#> numbers are produced via the L'Ecuyer-CMRG method. To disable this check, use
#> 'seed=NULL', or set option 'future.rng.onMisuse' to "ignore".
#> [1] 25
#> [1] 26
#> [1] 27
#> [1] 28
#> [1] 29
#> [1] 30
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: Closing open result set, pending rows
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: Closing open result set, pending rows
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: Closing open result set, pending rows
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: Closing open result set, pending rows
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: Closing open result set, pending rows
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Error: database is locked
#> Retrying in 0.3 seconds.
#> Warning: UNRELIABLE VALUE: Future ('<none>') unexpectedly generated random
#> numbers without specifying argument 'seed'. There is a risk that those random
#> numbers are not statistically sound and the overall results might be invalid.
#> To fix this, specify 'seed=TRUE'. This ensures that proper, parallel-safe random
#> numbers are produced via the L'Ecuyer-CMRG method. To disable this check, use
#> 'seed=NULL', or set option 'future.rng.onMisuse' to "ignore".
Created on 2020-12-20 by the reprex package (v0.3.0) `
Example of another execution of the above code. See the SQLite database here: bd_test.zip
As noted in the comment above, although print 1 to 30 appears on the console, the iris data was not written to SQLite in loops 2, 3, 5, 9, 16, 19, 26
[1] 1
[1] 2
[1] 3
[1] 4
[1] 5
[1] 6
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
[1] 7
[1] 8
[1] 9
[1] 10
[1] 11
[1] 12
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
[1] 13
[1] 14
[1] 15
[1] 16
[1] 17
[1] 18
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
[1] 19
[1] 20
[1] 21
[1] 22
[1] 23
[1] 24
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
[1] 25
[1] 26
[1] 27
[1] 28
[1] 29
[1] 30
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
Error: database is locked
Retrying in 0.3 seconds.
There were 25 warnings (use warnings() to see them)
>
Another attempt. But it failed. The messages indicate success in all loops, but the database shows 4050 to 4200 lines, when there should be 4500 lines
library(DBI)
library(RSQLite)
library(furrr)
#> Warning: package 'furrr' was built under R version 4.0.3
#> Carregando pacotes exigidos: future
library(future)
library(magrittr)
#> Warning: package 'magrittr' was built under R version 4.0.3
library(purrr)
#>
#> Attaching package: 'purrr'
#> The following object is masked from 'package:magrittr':
#>
#> set_names
n_teste <- 1:30
connect_sgbd <- function() {
conexao <- DBI::dbConnect(RSQLite::SQLite(),
dbname = file.path("bd_test.db"))
return(conexao)
}
teste_write_sqlite <- function(n_teste) {
tb_teste_iris <- iris %>%
dplyr::mutate(n_loop = n_teste)
tentativas <- purrr::rate_delay(pause = 2,
max_times = 20)
insist_write_sqlite <- purrr::insistently(DBI::dbWriteTable,
tentativas,
quiet = FALSE)
safely_write_sqlite <- purrr::safely(insist_write_sqlite)
conn <- connect_sgbd()
safely_write_sqlite_teste <- safely_write_sqlite(conn,
"tb_teste_iris",
tb_teste_iris,
append = TRUE)
if(is.null(safely_write_sqlite_teste$error) == FALSE){
DBI::dbDisconnect(conn)
return(
print(paste(n_teste, "-", "Failed to write"))
)
}
DBI::dbDisconnect(conn)
print(paste(n_teste, "-", safely_write_sqlite_teste$result))
}
future::plan("multisession",
workers = 5)
furrr::future_walk(n_teste, teste_write_sqlite, .progress = TRUE)
#> [1] "1 - TRUE"
#> [1] "2 - TRUE"
#> [1] "3 - TRUE"
#> [1] "4 - TRUE"
#> [1] "5 - TRUE"
#> [1] "6 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Warning: UNRELIABLE VALUE: Future ('<none>') unexpectedly generated random
#> numbers without specifying argument 'seed'. There is a risk that those random
#> numbers are not statistically sound and the overall results might be invalid.
#> To fix this, specify 'seed=TRUE'. This ensures that proper, parallel-safe random
#> numbers are produced via the L'Ecuyer-CMRG method. To disable this check, use
#> 'seed=NULL', or set option 'future.rng.onMisuse' to "ignore".
#> [1] "7 - TRUE"
#> [1] "8 - TRUE"
#> [1] "9 - TRUE"
#> [1] "10 - TRUE"
#> [1] "11 - TRUE"
#> [1] "12 - TRUE"
#> Warning: Closing open result set, pending rows
#> Error: database is locked
#> Retrying in 2 seconds.
#> Warning: UNRELIABLE VALUE: Future ('<none>') unexpectedly generated random
#> numbers without specifying argument 'seed'. There is a risk that those random
#> numbers are not statistically sound and the overall results might be invalid.
#> To fix this, specify 'seed=TRUE'. This ensures that proper, parallel-safe random
#> numbers are produced via the L'Ecuyer-CMRG method. To disable this check, use
#> 'seed=NULL', or set option 'future.rng.onMisuse' to "ignore".
#> [1] "13 - TRUE"
#> [1] "14 - TRUE"
#> [1] "15 - TRUE"
#> [1] "16 - TRUE"
#> [1] "17 - TRUE"
#> [1] "18 - TRUE"
#> Warning: Couldn't set synchronous mode: database is locked
#> Use `synchronous` = NULL to turn off this warning.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Warning: UNRELIABLE VALUE: Future ('<none>') unexpectedly generated random
#> numbers without specifying argument 'seed'. There is a risk that those random
#> numbers are not statistically sound and the overall results might be invalid.
#> To fix this, specify 'seed=TRUE'. This ensures that proper, parallel-safe random
#> numbers are produced via the L'Ecuyer-CMRG method. To disable this check, use
#> 'seed=NULL', or set option 'future.rng.onMisuse' to "ignore".
#> [1] "19 - TRUE"
#> [1] "20 - TRUE"
#> [1] "21 - TRUE"
#> [1] "22 - TRUE"
#> [1] "23 - TRUE"
#> [1] "24 - TRUE"
#> Warning: Couldn't set synchronous mode: database is locked
#> Use `synchronous` = NULL to turn off this warning.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Warning: UNRELIABLE VALUE: Future ('<none>') unexpectedly generated random
#> numbers without specifying argument 'seed'. There is a risk that those random
#> numbers are not statistically sound and the overall results might be invalid.
#> To fix this, specify 'seed=TRUE'. This ensures that proper, parallel-safe random
#> numbers are produced via the L'Ecuyer-CMRG method. To disable this check, use
#> 'seed=NULL', or set option 'future.rng.onMisuse' to "ignore".
#> [1] "25 - TRUE"
#> [1] "26 - TRUE"
#> [1] "27 - TRUE"
#> [1] "28 - TRUE"
#> [1] "29 - TRUE"
#> [1] "30 - TRUE"
#> Warning: Couldn't set synchronous mode: database is locked
#> Use `synchronous` = NULL to turn off this warning.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Warning: UNRELIABLE VALUE: Future ('<none>') unexpectedly generated random
#> numbers without specifying argument 'seed'. There is a risk that those random
#> numbers are not statistically sound and the overall results might be invalid.
#> To fix this, specify 'seed=TRUE'. This ensures that proper, parallel-safe random
#> numbers are produced via the L'Ecuyer-CMRG method. To disable this check, use
#> 'seed=NULL', or set option 'future.rng.onMisuse' to "ignore".
Created on 2020-12-22 by the reprex package (v0.3.0)
Thanks.
The solution here appears to be BEGIN IMMEDIATE TRANSACTION
, which either succeeds and locks the database, or fails with SQLITE_BUSY
. We don't need the busy handler.
I wonder if dbBegin()
should issue BEGIN IMMEDIATE TRANSACTION
-- currently it sends the equivalent of BEGIN DEFERRED TRANSACTION
, which blocks writing the database.
I suspect the oddities observed by @georgevbsantiago are due to the usage of savepoints -- multiple sessions overwriting each others' savepoints are a recipe for disaster. At the very least we need to use different names for the savepoints.
We need to work in transactions so that writes are fast. We can use sqlite3_get_autocommit()
to check if an external transaction has started, and use a normal transaction if not, further avoiding conflicts.
CC @gaborcsardi @richfitz.
library(DBI)
library(RSQLite)
library(furrr)
#> Loading required package: future
library(future)
library(magrittr)
library(purrr)
#>
#> Attaching package: 'purrr'
#> The following object is masked from 'package:magrittr':
#>
#> set_names
n_teste <- 1:1000
unlink("bd_test.db")
connect_sgbd <- function() {
conexao <- DBI::dbConnect(RSQLite::SQLite(),
dbname = file.path("bd_test.db")
)
return(conexao)
}
teste_write_sqlite <- function(n_teste) {
tb_teste_iris <- iris[1, ] %>%
dplyr::mutate(n_loop = n_teste)
tentativas <- purrr::rate_delay(
pause = 2,
max_times = 20
)
insist_execute_sqlite <- purrr::insistently(
DBI::dbExecute, tentativas,
quiet = FALSE
)
conn <- connect_sgbd()
on.exit(dbDisconnect(conn))
tryCatch(
{
insist_execute_sqlite(conn, "BEGIN IMMEDIATE TRANSACTION")
# Rollback on failure
on.exit(try(dbExecute(conn, "ROLLBACK TRANSACTION")))
out <- dbWriteTable(conn, "tb_teste_iris", tb_teste_iris, append = TRUE)
dbExecute(conn, "COMMIT TRANSACTION")
# Don't rollback on success
on.exit(NULL)
print(paste(n_teste, "-", out))
},
error = function(e) {
print(paste(n_teste, "-", conditionMessage(e)))
}
)
}
future::plan("multisession",
workers = 8
)
options(future.rng.onMisuse = "ignore")
furrr::future_walk(n_teste, teste_write_sqlite, .progress = TRUE)
#> [1] "1 - TRUE"
#> [1] "2 - TRUE"
#> [1] "3 - TRUE"
#> [1] "4 - TRUE"
#> [1] "5 - TRUE"
#> [1] "6 - TRUE"
#> [1] "7 - TRUE"
#> [1] "8 - TRUE"
#> [1] "9 - TRUE"
#> [1] "10 - TRUE"
#> [1] "11 - TRUE"
#> [1] "12 - TRUE"
#> [1] "13 - TRUE"
#> [1] "14 - TRUE"
#> [1] "15 - TRUE"
#> [1] "16 - TRUE"
#> [1] "17 - TRUE"
#> [1] "18 - TRUE"
#> [1] "19 - TRUE"
#> [1] "20 - TRUE"
#> [1] "21 - TRUE"
#> [1] "22 - TRUE"
#> [1] "23 - TRUE"
#> [1] "24 - TRUE"
#> [1] "25 - TRUE"
#> [1] "26 - TRUE"
#> [1] "27 - TRUE"
#> [1] "28 - TRUE"
#> [1] "29 - TRUE"
#> [1] "30 - TRUE"
#> [1] "31 - TRUE"
#> [1] "32 - TRUE"
#> [1] "33 - TRUE"
#> [1] "34 - TRUE"
#> [1] "35 - TRUE"
#> [1] "36 - TRUE"
#> [1] "37 - TRUE"
#> [1] "38 - TRUE"
#> [1] "39 - TRUE"
#> [1] "40 - TRUE"
#> [1] "41 - TRUE"
#> [1] "42 - TRUE"
#> [1] "43 - TRUE"
#> [1] "44 - TRUE"
#> [1] "45 - TRUE"
#> [1] "46 - TRUE"
#> [1] "47 - TRUE"
#> [1] "48 - TRUE"
#> [1] "49 - TRUE"
#> [1] "50 - TRUE"
#> [1] "51 - TRUE"
#> [1] "52 - TRUE"
#> [1] "53 - TRUE"
#> [1] "54 - TRUE"
#> [1] "55 - TRUE"
#> [1] "56 - TRUE"
#> [1] "57 - TRUE"
#> [1] "58 - TRUE"
#> [1] "59 - TRUE"
#> [1] "60 - TRUE"
#> [1] "61 - TRUE"
#> [1] "62 - TRUE"
#> [1] "63 - TRUE"
#> [1] "64 - TRUE"
#> [1] "65 - TRUE"
#> [1] "66 - TRUE"
#> [1] "67 - TRUE"
#> [1] "68 - TRUE"
#> [1] "69 - TRUE"
#> [1] "70 - TRUE"
#> [1] "71 - TRUE"
#> [1] "72 - TRUE"
#> [1] "73 - TRUE"
#> [1] "74 - TRUE"
#> [1] "75 - TRUE"
#> [1] "76 - TRUE"
#> [1] "77 - TRUE"
#> [1] "78 - TRUE"
#> [1] "79 - TRUE"
#> [1] "80 - TRUE"
#> [1] "81 - TRUE"
#> [1] "82 - TRUE"
#> [1] "83 - TRUE"
#> [1] "84 - TRUE"
#> [1] "85 - TRUE"
#> [1] "86 - TRUE"
#> [1] "87 - TRUE"
#> [1] "88 - TRUE"
#> [1] "89 - TRUE"
#> [1] "90 - TRUE"
#> [1] "91 - TRUE"
#> [1] "92 - TRUE"
#> [1] "93 - TRUE"
#> [1] "94 - TRUE"
#> [1] "95 - TRUE"
#> [1] "96 - TRUE"
#> [1] "97 - TRUE"
#> [1] "98 - TRUE"
#> [1] "99 - TRUE"
#> [1] "100 - TRUE"
#> [1] "101 - TRUE"
#> [1] "102 - TRUE"
#> [1] "103 - TRUE"
#> [1] "104 - TRUE"
#> [1] "105 - TRUE"
#> [1] "106 - TRUE"
#> [1] "107 - TRUE"
#> [1] "108 - TRUE"
#> [1] "109 - TRUE"
#> [1] "110 - TRUE"
#> [1] "111 - TRUE"
#> [1] "112 - TRUE"
#> [1] "113 - TRUE"
#> [1] "114 - TRUE"
#> [1] "115 - TRUE"
#> [1] "116 - TRUE"
#> [1] "117 - TRUE"
#> [1] "118 - TRUE"
#> [1] "119 - TRUE"
#> [1] "120 - TRUE"
#> [1] "121 - TRUE"
#> [1] "122 - TRUE"
#> [1] "123 - TRUE"
#> [1] "124 - TRUE"
#> [1] "125 - TRUE"
#> [1] "126 - TRUE"
#> [1] "127 - TRUE"
#> [1] "128 - TRUE"
#> [1] "129 - TRUE"
#> [1] "130 - TRUE"
#> [1] "131 - TRUE"
#> [1] "132 - TRUE"
#> [1] "133 - TRUE"
#> [1] "134 - TRUE"
#> [1] "135 - TRUE"
#> [1] "136 - TRUE"
#> [1] "137 - TRUE"
#> [1] "138 - TRUE"
#> [1] "139 - TRUE"
#> [1] "140 - TRUE"
#> [1] "141 - TRUE"
#> [1] "142 - TRUE"
#> [1] "143 - TRUE"
#> [1] "144 - TRUE"
#> [1] "145 - TRUE"
#> [1] "146 - TRUE"
#> [1] "147 - TRUE"
#> [1] "148 - TRUE"
#> [1] "149 - TRUE"
#> [1] "150 - TRUE"
#> [1] "151 - TRUE"
#> [1] "152 - TRUE"
#> [1] "153 - TRUE"
#> [1] "154 - TRUE"
#> [1] "155 - TRUE"
#> [1] "156 - TRUE"
#> [1] "157 - TRUE"
#> [1] "158 - TRUE"
#> [1] "159 - TRUE"
#> [1] "160 - TRUE"
#> [1] "161 - TRUE"
#> [1] "162 - TRUE"
#> [1] "163 - TRUE"
#> [1] "164 - TRUE"
#> [1] "165 - TRUE"
#> [1] "166 - TRUE"
#> [1] "167 - TRUE"
#> [1] "168 - TRUE"
#> [1] "169 - TRUE"
#> [1] "170 - TRUE"
#> [1] "171 - TRUE"
#> [1] "172 - TRUE"
#> [1] "173 - TRUE"
#> [1] "174 - TRUE"
#> [1] "175 - TRUE"
#> [1] "176 - TRUE"
#> [1] "177 - TRUE"
#> [1] "178 - TRUE"
#> [1] "179 - TRUE"
#> [1] "180 - TRUE"
#> [1] "181 - TRUE"
#> [1] "182 - TRUE"
#> [1] "183 - TRUE"
#> [1] "184 - TRUE"
#> [1] "185 - TRUE"
#> [1] "186 - TRUE"
#> [1] "187 - TRUE"
#> [1] "188 - TRUE"
#> [1] "189 - TRUE"
#> [1] "190 - TRUE"
#> [1] "191 - TRUE"
#> [1] "192 - TRUE"
#> [1] "193 - TRUE"
#> [1] "194 - TRUE"
#> [1] "195 - TRUE"
#> [1] "196 - TRUE"
#> [1] "197 - TRUE"
#> [1] "198 - TRUE"
#> [1] "199 - TRUE"
#> [1] "200 - TRUE"
#> [1] "201 - TRUE"
#> [1] "202 - TRUE"
#> [1] "203 - TRUE"
#> [1] "204 - TRUE"
#> [1] "205 - TRUE"
#> [1] "206 - TRUE"
#> [1] "207 - TRUE"
#> [1] "208 - TRUE"
#> [1] "209 - TRUE"
#> [1] "210 - TRUE"
#> [1] "211 - TRUE"
#> [1] "212 - TRUE"
#> [1] "213 - TRUE"
#> [1] "214 - TRUE"
#> [1] "215 - TRUE"
#> [1] "216 - TRUE"
#> [1] "217 - TRUE"
#> [1] "218 - TRUE"
#> [1] "219 - TRUE"
#> [1] "220 - TRUE"
#> [1] "221 - TRUE"
#> [1] "222 - TRUE"
#> [1] "223 - TRUE"
#> [1] "224 - TRUE"
#> [1] "225 - TRUE"
#> [1] "226 - TRUE"
#> [1] "227 - TRUE"
#> [1] "228 - TRUE"
#> [1] "229 - TRUE"
#> [1] "230 - TRUE"
#> [1] "231 - TRUE"
#> [1] "232 - TRUE"
#> [1] "233 - TRUE"
#> [1] "234 - TRUE"
#> [1] "235 - TRUE"
#> [1] "236 - TRUE"
#> [1] "237 - TRUE"
#> [1] "238 - TRUE"
#> [1] "239 - TRUE"
#> [1] "240 - TRUE"
#> [1] "241 - TRUE"
#> [1] "242 - TRUE"
#> [1] "243 - TRUE"
#> [1] "244 - TRUE"
#> [1] "245 - TRUE"
#> [1] "246 - TRUE"
#> [1] "247 - TRUE"
#> [1] "248 - TRUE"
#> [1] "249 - TRUE"
#> [1] "250 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "251 - TRUE"
#> [1] "252 - TRUE"
#> [1] "253 - TRUE"
#> [1] "254 - TRUE"
#> [1] "255 - TRUE"
#> [1] "256 - TRUE"
#> [1] "257 - TRUE"
#> [1] "258 - TRUE"
#> [1] "259 - TRUE"
#> [1] "260 - TRUE"
#> [1] "261 - TRUE"
#> [1] "262 - TRUE"
#> [1] "263 - TRUE"
#> [1] "264 - TRUE"
#> [1] "265 - TRUE"
#> [1] "266 - TRUE"
#> [1] "267 - TRUE"
#> [1] "268 - TRUE"
#> [1] "269 - TRUE"
#> [1] "270 - TRUE"
#> [1] "271 - TRUE"
#> [1] "272 - TRUE"
#> [1] "273 - TRUE"
#> [1] "274 - TRUE"
#> [1] "275 - TRUE"
#> [1] "276 - TRUE"
#> [1] "277 - TRUE"
#> [1] "278 - TRUE"
#> [1] "279 - TRUE"
#> [1] "280 - TRUE"
#> [1] "281 - TRUE"
#> [1] "282 - TRUE"
#> [1] "283 - TRUE"
#> [1] "284 - TRUE"
#> [1] "285 - TRUE"
#> [1] "286 - TRUE"
#> [1] "287 - TRUE"
#> [1] "288 - TRUE"
#> [1] "289 - TRUE"
#> [1] "290 - TRUE"
#> [1] "291 - TRUE"
#> [1] "292 - TRUE"
#> [1] "293 - TRUE"
#> [1] "294 - TRUE"
#> [1] "295 - TRUE"
#> [1] "296 - TRUE"
#> [1] "297 - TRUE"
#> [1] "298 - TRUE"
#> [1] "299 - TRUE"
#> [1] "300 - TRUE"
#> [1] "301 - TRUE"
#> [1] "302 - TRUE"
#> [1] "303 - TRUE"
#> [1] "304 - TRUE"
#> [1] "305 - TRUE"
#> [1] "306 - TRUE"
#> [1] "307 - TRUE"
#> [1] "308 - TRUE"
#> [1] "309 - TRUE"
#> [1] "310 - TRUE"
#> [1] "311 - TRUE"
#> [1] "312 - TRUE"
#> [1] "313 - TRUE"
#> [1] "314 - TRUE"
#> [1] "315 - TRUE"
#> [1] "316 - TRUE"
#> [1] "317 - TRUE"
#> [1] "318 - TRUE"
#> [1] "319 - TRUE"
#> [1] "320 - TRUE"
#> [1] "321 - TRUE"
#> [1] "322 - TRUE"
#> [1] "323 - TRUE"
#> [1] "324 - TRUE"
#> [1] "325 - TRUE"
#> [1] "326 - TRUE"
#> [1] "327 - TRUE"
#> [1] "328 - TRUE"
#> [1] "329 - TRUE"
#> [1] "330 - TRUE"
#> [1] "331 - TRUE"
#> [1] "332 - TRUE"
#> [1] "333 - TRUE"
#> [1] "334 - TRUE"
#> [1] "335 - TRUE"
#> [1] "336 - TRUE"
#> [1] "337 - TRUE"
#> [1] "338 - TRUE"
#> [1] "339 - TRUE"
#> [1] "340 - TRUE"
#> [1] "341 - TRUE"
#> [1] "342 - TRUE"
#> [1] "343 - TRUE"
#> [1] "344 - TRUE"
#> [1] "345 - TRUE"
#> [1] "346 - TRUE"
#> [1] "347 - TRUE"
#> [1] "348 - TRUE"
#> [1] "349 - TRUE"
#> [1] "350 - TRUE"
#> [1] "351 - TRUE"
#> [1] "352 - TRUE"
#> [1] "353 - TRUE"
#> [1] "354 - TRUE"
#> [1] "355 - TRUE"
#> [1] "356 - TRUE"
#> [1] "357 - TRUE"
#> [1] "358 - TRUE"
#> [1] "359 - TRUE"
#> [1] "360 - TRUE"
#> [1] "361 - TRUE"
#> [1] "362 - TRUE"
#> [1] "363 - TRUE"
#> [1] "364 - TRUE"
#> [1] "365 - TRUE"
#> [1] "366 - TRUE"
#> [1] "367 - TRUE"
#> [1] "368 - TRUE"
#> [1] "369 - TRUE"
#> [1] "370 - TRUE"
#> [1] "371 - TRUE"
#> [1] "372 - TRUE"
#> [1] "373 - TRUE"
#> [1] "374 - TRUE"
#> [1] "375 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "376 - TRUE"
#> [1] "377 - TRUE"
#> [1] "378 - TRUE"
#> [1] "379 - TRUE"
#> [1] "380 - TRUE"
#> [1] "381 - TRUE"
#> [1] "382 - TRUE"
#> [1] "383 - TRUE"
#> [1] "384 - TRUE"
#> [1] "385 - TRUE"
#> [1] "386 - TRUE"
#> [1] "387 - TRUE"
#> [1] "388 - TRUE"
#> [1] "389 - TRUE"
#> [1] "390 - TRUE"
#> [1] "391 - TRUE"
#> [1] "392 - TRUE"
#> [1] "393 - TRUE"
#> [1] "394 - TRUE"
#> [1] "395 - TRUE"
#> [1] "396 - TRUE"
#> [1] "397 - TRUE"
#> [1] "398 - TRUE"
#> [1] "399 - TRUE"
#> [1] "400 - TRUE"
#> [1] "401 - TRUE"
#> [1] "402 - TRUE"
#> [1] "403 - TRUE"
#> [1] "404 - TRUE"
#> [1] "405 - TRUE"
#> [1] "406 - TRUE"
#> [1] "407 - TRUE"
#> [1] "408 - TRUE"
#> [1] "409 - TRUE"
#> [1] "410 - TRUE"
#> [1] "411 - TRUE"
#> [1] "412 - TRUE"
#> [1] "413 - TRUE"
#> [1] "414 - TRUE"
#> [1] "415 - TRUE"
#> [1] "416 - TRUE"
#> [1] "417 - TRUE"
#> [1] "418 - TRUE"
#> [1] "419 - TRUE"
#> [1] "420 - TRUE"
#> [1] "421 - TRUE"
#> [1] "422 - TRUE"
#> [1] "423 - TRUE"
#> [1] "424 - TRUE"
#> [1] "425 - TRUE"
#> [1] "426 - TRUE"
#> [1] "427 - TRUE"
#> [1] "428 - TRUE"
#> [1] "429 - TRUE"
#> [1] "430 - TRUE"
#> [1] "431 - TRUE"
#> [1] "432 - TRUE"
#> [1] "433 - TRUE"
#> [1] "434 - TRUE"
#> [1] "435 - TRUE"
#> [1] "436 - TRUE"
#> [1] "437 - TRUE"
#> [1] "438 - TRUE"
#> [1] "439 - TRUE"
#> [1] "440 - TRUE"
#> [1] "441 - TRUE"
#> [1] "442 - TRUE"
#> [1] "443 - TRUE"
#> [1] "444 - TRUE"
#> [1] "445 - TRUE"
#> [1] "446 - TRUE"
#> [1] "447 - TRUE"
#> [1] "448 - TRUE"
#> [1] "449 - TRUE"
#> [1] "450 - TRUE"
#> [1] "451 - TRUE"
#> [1] "452 - TRUE"
#> [1] "453 - TRUE"
#> [1] "454 - TRUE"
#> [1] "455 - TRUE"
#> [1] "456 - TRUE"
#> [1] "457 - TRUE"
#> [1] "458 - TRUE"
#> [1] "459 - TRUE"
#> [1] "460 - TRUE"
#> [1] "461 - TRUE"
#> [1] "462 - TRUE"
#> [1] "463 - TRUE"
#> [1] "464 - TRUE"
#> [1] "465 - TRUE"
#> [1] "466 - TRUE"
#> [1] "467 - TRUE"
#> [1] "468 - TRUE"
#> [1] "469 - TRUE"
#> [1] "470 - TRUE"
#> [1] "471 - TRUE"
#> [1] "472 - TRUE"
#> [1] "473 - TRUE"
#> [1] "474 - TRUE"
#> [1] "475 - TRUE"
#> [1] "476 - TRUE"
#> [1] "477 - TRUE"
#> [1] "478 - TRUE"
#> [1] "479 - TRUE"
#> [1] "480 - TRUE"
#> [1] "481 - TRUE"
#> [1] "482 - TRUE"
#> [1] "483 - TRUE"
#> [1] "484 - TRUE"
#> [1] "485 - TRUE"
#> [1] "486 - TRUE"
#> [1] "487 - TRUE"
#> [1] "488 - TRUE"
#> [1] "489 - TRUE"
#> [1] "490 - TRUE"
#> [1] "491 - TRUE"
#> [1] "492 - TRUE"
#> [1] "493 - TRUE"
#> [1] "494 - TRUE"
#> [1] "495 - TRUE"
#> [1] "496 - TRUE"
#> [1] "497 - TRUE"
#> [1] "498 - TRUE"
#> [1] "499 - TRUE"
#> [1] "500 - TRUE"
#> [1] "501 - TRUE"
#> [1] "502 - TRUE"
#> [1] "503 - TRUE"
#> [1] "504 - TRUE"
#> [1] "505 - TRUE"
#> [1] "506 - TRUE"
#> [1] "507 - TRUE"
#> [1] "508 - TRUE"
#> [1] "509 - TRUE"
#> [1] "510 - TRUE"
#> [1] "511 - TRUE"
#> [1] "512 - TRUE"
#> [1] "513 - TRUE"
#> [1] "514 - TRUE"
#> [1] "515 - TRUE"
#> [1] "516 - TRUE"
#> [1] "517 - TRUE"
#> [1] "518 - TRUE"
#> [1] "519 - TRUE"
#> [1] "520 - TRUE"
#> [1] "521 - TRUE"
#> [1] "522 - TRUE"
#> [1] "523 - TRUE"
#> [1] "524 - TRUE"
#> [1] "525 - TRUE"
#> [1] "526 - TRUE"
#> [1] "527 - TRUE"
#> [1] "528 - TRUE"
#> [1] "529 - TRUE"
#> [1] "530 - TRUE"
#> [1] "531 - TRUE"
#> [1] "532 - TRUE"
#> [1] "533 - TRUE"
#> [1] "534 - TRUE"
#> [1] "535 - TRUE"
#> [1] "536 - TRUE"
#> [1] "537 - TRUE"
#> [1] "538 - TRUE"
#> [1] "539 - TRUE"
#> [1] "540 - TRUE"
#> [1] "541 - TRUE"
#> [1] "542 - TRUE"
#> [1] "543 - TRUE"
#> [1] "544 - TRUE"
#> [1] "545 - TRUE"
#> [1] "546 - TRUE"
#> [1] "547 - TRUE"
#> [1] "548 - TRUE"
#> [1] "549 - TRUE"
#> [1] "550 - TRUE"
#> [1] "551 - TRUE"
#> [1] "552 - TRUE"
#> [1] "553 - TRUE"
#> [1] "554 - TRUE"
#> [1] "555 - TRUE"
#> [1] "556 - TRUE"
#> [1] "557 - TRUE"
#> [1] "558 - TRUE"
#> [1] "559 - TRUE"
#> [1] "560 - TRUE"
#> [1] "561 - TRUE"
#> [1] "562 - TRUE"
#> [1] "563 - TRUE"
#> [1] "564 - TRUE"
#> [1] "565 - TRUE"
#> [1] "566 - TRUE"
#> [1] "567 - TRUE"
#> [1] "568 - TRUE"
#> [1] "569 - TRUE"
#> [1] "570 - TRUE"
#> [1] "571 - TRUE"
#> [1] "572 - TRUE"
#> [1] "573 - TRUE"
#> [1] "574 - TRUE"
#> [1] "575 - TRUE"
#> [1] "576 - TRUE"
#> [1] "577 - TRUE"
#> [1] "578 - TRUE"
#> [1] "579 - TRUE"
#> [1] "580 - TRUE"
#> [1] "581 - TRUE"
#> [1] "582 - TRUE"
#> [1] "583 - TRUE"
#> [1] "584 - TRUE"
#> [1] "585 - TRUE"
#> [1] "586 - TRUE"
#> [1] "587 - TRUE"
#> [1] "588 - TRUE"
#> [1] "589 - TRUE"
#> [1] "590 - TRUE"
#> [1] "591 - TRUE"
#> [1] "592 - TRUE"
#> [1] "593 - TRUE"
#> [1] "594 - TRUE"
#> [1] "595 - TRUE"
#> [1] "596 - TRUE"
#> [1] "597 - TRUE"
#> [1] "598 - TRUE"
#> [1] "599 - TRUE"
#> [1] "600 - TRUE"
#> [1] "601 - TRUE"
#> [1] "602 - TRUE"
#> [1] "603 - TRUE"
#> [1] "604 - TRUE"
#> [1] "605 - TRUE"
#> [1] "606 - TRUE"
#> [1] "607 - TRUE"
#> [1] "608 - TRUE"
#> [1] "609 - TRUE"
#> [1] "610 - TRUE"
#> [1] "611 - TRUE"
#> [1] "612 - TRUE"
#> [1] "613 - TRUE"
#> [1] "614 - TRUE"
#> [1] "615 - TRUE"
#> [1] "616 - TRUE"
#> [1] "617 - TRUE"
#> [1] "618 - TRUE"
#> [1] "619 - TRUE"
#> [1] "620 - TRUE"
#> [1] "621 - TRUE"
#> [1] "622 - TRUE"
#> [1] "623 - TRUE"
#> [1] "624 - TRUE"
#> [1] "625 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "626 - TRUE"
#> [1] "627 - TRUE"
#> [1] "628 - TRUE"
#> [1] "629 - TRUE"
#> [1] "630 - TRUE"
#> [1] "631 - TRUE"
#> [1] "632 - TRUE"
#> [1] "633 - TRUE"
#> [1] "634 - TRUE"
#> [1] "635 - TRUE"
#> [1] "636 - TRUE"
#> [1] "637 - TRUE"
#> [1] "638 - TRUE"
#> [1] "639 - TRUE"
#> [1] "640 - TRUE"
#> [1] "641 - TRUE"
#> [1] "642 - TRUE"
#> [1] "643 - TRUE"
#> [1] "644 - TRUE"
#> [1] "645 - TRUE"
#> [1] "646 - TRUE"
#> [1] "647 - TRUE"
#> [1] "648 - TRUE"
#> [1] "649 - TRUE"
#> [1] "650 - TRUE"
#> [1] "651 - TRUE"
#> [1] "652 - TRUE"
#> [1] "653 - TRUE"
#> [1] "654 - TRUE"
#> [1] "655 - TRUE"
#> [1] "656 - TRUE"
#> [1] "657 - TRUE"
#> [1] "658 - TRUE"
#> [1] "659 - TRUE"
#> [1] "660 - TRUE"
#> [1] "661 - TRUE"
#> [1] "662 - TRUE"
#> [1] "663 - TRUE"
#> [1] "664 - TRUE"
#> [1] "665 - TRUE"
#> [1] "666 - TRUE"
#> [1] "667 - TRUE"
#> [1] "668 - TRUE"
#> [1] "669 - TRUE"
#> [1] "670 - TRUE"
#> [1] "671 - TRUE"
#> [1] "672 - TRUE"
#> [1] "673 - TRUE"
#> [1] "674 - TRUE"
#> [1] "675 - TRUE"
#> [1] "676 - TRUE"
#> [1] "677 - TRUE"
#> [1] "678 - TRUE"
#> [1] "679 - TRUE"
#> [1] "680 - TRUE"
#> [1] "681 - TRUE"
#> [1] "682 - TRUE"
#> [1] "683 - TRUE"
#> [1] "684 - TRUE"
#> [1] "685 - TRUE"
#> [1] "686 - TRUE"
#> [1] "687 - TRUE"
#> [1] "688 - TRUE"
#> [1] "689 - TRUE"
#> [1] "690 - TRUE"
#> [1] "691 - TRUE"
#> [1] "692 - TRUE"
#> [1] "693 - TRUE"
#> [1] "694 - TRUE"
#> [1] "695 - TRUE"
#> [1] "696 - TRUE"
#> [1] "697 - TRUE"
#> [1] "698 - TRUE"
#> [1] "699 - TRUE"
#> [1] "700 - TRUE"
#> [1] "701 - TRUE"
#> [1] "702 - TRUE"
#> [1] "703 - TRUE"
#> [1] "704 - TRUE"
#> [1] "705 - TRUE"
#> [1] "706 - TRUE"
#> [1] "707 - TRUE"
#> [1] "708 - TRUE"
#> [1] "709 - TRUE"
#> [1] "710 - TRUE"
#> [1] "711 - TRUE"
#> [1] "712 - TRUE"
#> [1] "713 - TRUE"
#> [1] "714 - TRUE"
#> [1] "715 - TRUE"
#> [1] "716 - TRUE"
#> [1] "717 - TRUE"
#> [1] "718 - TRUE"
#> [1] "719 - TRUE"
#> [1] "720 - TRUE"
#> [1] "721 - TRUE"
#> [1] "722 - TRUE"
#> [1] "723 - TRUE"
#> [1] "724 - TRUE"
#> [1] "725 - TRUE"
#> [1] "726 - TRUE"
#> [1] "727 - TRUE"
#> [1] "728 - TRUE"
#> [1] "729 - TRUE"
#> [1] "730 - TRUE"
#> [1] "731 - TRUE"
#> [1] "732 - TRUE"
#> [1] "733 - TRUE"
#> [1] "734 - TRUE"
#> [1] "735 - TRUE"
#> [1] "736 - TRUE"
#> [1] "737 - TRUE"
#> [1] "738 - TRUE"
#> [1] "739 - TRUE"
#> [1] "740 - TRUE"
#> [1] "741 - TRUE"
#> [1] "742 - TRUE"
#> [1] "743 - TRUE"
#> [1] "744 - TRUE"
#> [1] "745 - TRUE"
#> [1] "746 - TRUE"
#> [1] "747 - TRUE"
#> [1] "748 - TRUE"
#> [1] "749 - TRUE"
#> [1] "750 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "751 - TRUE"
#> [1] "752 - TRUE"
#> [1] "753 - TRUE"
#> [1] "754 - TRUE"
#> [1] "755 - TRUE"
#> [1] "756 - TRUE"
#> [1] "757 - TRUE"
#> [1] "758 - TRUE"
#> [1] "759 - TRUE"
#> [1] "760 - TRUE"
#> [1] "761 - TRUE"
#> [1] "762 - TRUE"
#> [1] "763 - TRUE"
#> [1] "764 - TRUE"
#> [1] "765 - TRUE"
#> [1] "766 - TRUE"
#> [1] "767 - TRUE"
#> [1] "768 - TRUE"
#> [1] "769 - TRUE"
#> [1] "770 - TRUE"
#> [1] "771 - TRUE"
#> [1] "772 - TRUE"
#> [1] "773 - TRUE"
#> [1] "774 - TRUE"
#> [1] "775 - TRUE"
#> [1] "776 - TRUE"
#> [1] "777 - TRUE"
#> [1] "778 - TRUE"
#> [1] "779 - TRUE"
#> [1] "780 - TRUE"
#> [1] "781 - TRUE"
#> [1] "782 - TRUE"
#> [1] "783 - TRUE"
#> [1] "784 - TRUE"
#> [1] "785 - TRUE"
#> [1] "786 - TRUE"
#> [1] "787 - TRUE"
#> [1] "788 - TRUE"
#> [1] "789 - TRUE"
#> [1] "790 - TRUE"
#> [1] "791 - TRUE"
#> [1] "792 - TRUE"
#> [1] "793 - TRUE"
#> [1] "794 - TRUE"
#> [1] "795 - TRUE"
#> [1] "796 - TRUE"
#> [1] "797 - TRUE"
#> [1] "798 - TRUE"
#> [1] "799 - TRUE"
#> [1] "800 - TRUE"
#> [1] "801 - TRUE"
#> [1] "802 - TRUE"
#> [1] "803 - TRUE"
#> [1] "804 - TRUE"
#> [1] "805 - TRUE"
#> [1] "806 - TRUE"
#> [1] "807 - TRUE"
#> [1] "808 - TRUE"
#> [1] "809 - TRUE"
#> [1] "810 - TRUE"
#> [1] "811 - TRUE"
#> [1] "812 - TRUE"
#> [1] "813 - TRUE"
#> [1] "814 - TRUE"
#> [1] "815 - TRUE"
#> [1] "816 - TRUE"
#> [1] "817 - TRUE"
#> [1] "818 - TRUE"
#> [1] "819 - TRUE"
#> [1] "820 - TRUE"
#> [1] "821 - TRUE"
#> [1] "822 - TRUE"
#> [1] "823 - TRUE"
#> [1] "824 - TRUE"
#> [1] "825 - TRUE"
#> [1] "826 - TRUE"
#> [1] "827 - TRUE"
#> [1] "828 - TRUE"
#> [1] "829 - TRUE"
#> [1] "830 - TRUE"
#> [1] "831 - TRUE"
#> [1] "832 - TRUE"
#> [1] "833 - TRUE"
#> [1] "834 - TRUE"
#> [1] "835 - TRUE"
#> [1] "836 - TRUE"
#> [1] "837 - TRUE"
#> [1] "838 - TRUE"
#> [1] "839 - TRUE"
#> [1] "840 - TRUE"
#> [1] "841 - TRUE"
#> [1] "842 - TRUE"
#> [1] "843 - TRUE"
#> [1] "844 - TRUE"
#> [1] "845 - TRUE"
#> [1] "846 - TRUE"
#> [1] "847 - TRUE"
#> [1] "848 - TRUE"
#> [1] "849 - TRUE"
#> [1] "850 - TRUE"
#> [1] "851 - TRUE"
#> [1] "852 - TRUE"
#> [1] "853 - TRUE"
#> [1] "854 - TRUE"
#> [1] "855 - TRUE"
#> [1] "856 - TRUE"
#> [1] "857 - TRUE"
#> [1] "858 - TRUE"
#> [1] "859 - TRUE"
#> [1] "860 - TRUE"
#> [1] "861 - TRUE"
#> [1] "862 - TRUE"
#> [1] "863 - TRUE"
#> [1] "864 - TRUE"
#> [1] "865 - TRUE"
#> [1] "866 - TRUE"
#> [1] "867 - TRUE"
#> [1] "868 - TRUE"
#> [1] "869 - TRUE"
#> [1] "870 - TRUE"
#> [1] "871 - TRUE"
#> [1] "872 - TRUE"
#> [1] "873 - TRUE"
#> [1] "874 - TRUE"
#> [1] "875 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "876 - TRUE"
#> [1] "877 - TRUE"
#> [1] "878 - TRUE"
#> [1] "879 - TRUE"
#> [1] "880 - TRUE"
#> [1] "881 - TRUE"
#> [1] "882 - TRUE"
#> [1] "883 - TRUE"
#> [1] "884 - TRUE"
#> [1] "885 - TRUE"
#> [1] "886 - TRUE"
#> [1] "887 - TRUE"
#> [1] "888 - TRUE"
#> [1] "889 - TRUE"
#> [1] "890 - TRUE"
#> [1] "891 - TRUE"
#> [1] "892 - TRUE"
#> [1] "893 - TRUE"
#> [1] "894 - TRUE"
#> [1] "895 - TRUE"
#> [1] "896 - TRUE"
#> [1] "897 - TRUE"
#> [1] "898 - TRUE"
#> [1] "899 - TRUE"
#> [1] "900 - TRUE"
#> [1] "901 - TRUE"
#> [1] "902 - TRUE"
#> [1] "903 - TRUE"
#> [1] "904 - TRUE"
#> [1] "905 - TRUE"
#> [1] "906 - TRUE"
#> [1] "907 - TRUE"
#> [1] "908 - TRUE"
#> [1] "909 - TRUE"
#> [1] "910 - TRUE"
#> [1] "911 - TRUE"
#> [1] "912 - TRUE"
#> [1] "913 - TRUE"
#> [1] "914 - TRUE"
#> [1] "915 - TRUE"
#> [1] "916 - TRUE"
#> [1] "917 - TRUE"
#> [1] "918 - TRUE"
#> [1] "919 - TRUE"
#> [1] "920 - TRUE"
#> [1] "921 - TRUE"
#> [1] "922 - TRUE"
#> [1] "923 - TRUE"
#> [1] "924 - TRUE"
#> [1] "925 - TRUE"
#> [1] "926 - TRUE"
#> [1] "927 - TRUE"
#> [1] "928 - TRUE"
#> [1] "929 - TRUE"
#> [1] "930 - TRUE"
#> [1] "931 - TRUE"
#> [1] "932 - TRUE"
#> [1] "933 - TRUE"
#> [1] "934 - TRUE"
#> [1] "935 - TRUE"
#> [1] "936 - TRUE"
#> [1] "937 - TRUE"
#> [1] "938 - TRUE"
#> [1] "939 - TRUE"
#> [1] "940 - TRUE"
#> [1] "941 - TRUE"
#> [1] "942 - TRUE"
#> [1] "943 - TRUE"
#> [1] "944 - TRUE"
#> [1] "945 - TRUE"
#> [1] "946 - TRUE"
#> [1] "947 - TRUE"
#> [1] "948 - TRUE"
#> [1] "949 - TRUE"
#> [1] "950 - TRUE"
#> [1] "951 - TRUE"
#> [1] "952 - TRUE"
#> [1] "953 - TRUE"
#> [1] "954 - TRUE"
#> [1] "955 - TRUE"
#> [1] "956 - TRUE"
#> [1] "957 - TRUE"
#> [1] "958 - TRUE"
#> [1] "959 - TRUE"
#> [1] "960 - TRUE"
#> [1] "961 - TRUE"
#> [1] "962 - TRUE"
#> [1] "963 - TRUE"
#> [1] "964 - TRUE"
#> [1] "965 - TRUE"
#> [1] "966 - TRUE"
#> [1] "967 - TRUE"
#> [1] "968 - TRUE"
#> [1] "969 - TRUE"
#> [1] "970 - TRUE"
#> [1] "971 - TRUE"
#> [1] "972 - TRUE"
#> [1] "973 - TRUE"
#> [1] "974 - TRUE"
#> [1] "975 - TRUE"
#> [1] "976 - TRUE"
#> [1] "977 - TRUE"
#> [1] "978 - TRUE"
#> [1] "979 - TRUE"
#> [1] "980 - TRUE"
#> [1] "981 - TRUE"
#> [1] "982 - TRUE"
#> [1] "983 - TRUE"
#> [1] "984 - TRUE"
#> [1] "985 - TRUE"
#> [1] "986 - TRUE"
#> [1] "987 - TRUE"
#> [1] "988 - TRUE"
#> [1] "989 - TRUE"
#> [1] "990 - TRUE"
#> [1] "991 - TRUE"
#> [1] "992 - TRUE"
#> [1] "993 - TRUE"
#> [1] "994 - TRUE"
#> [1] "995 - TRUE"
#> [1] "996 - TRUE"
#> [1] "997 - TRUE"
#> [1] "998 - TRUE"
#> [1] "999 - TRUE"
#> [1] "1000 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
con <- dbConnect(RSQLite::SQLite(), dbname = file.path("bd_test.db"))
dbGetQuery(con, "SELECT n_loop FROM tb_teste_iris ORDER BY n_loop")
#> n_loop
#> 1 1
#> 2 2
#> 3 3
#> 4 4
#> 5 5
#> 6 6
#> 7 7
#> 8 8
#> 9 9
#> 10 10
#> 11 11
#> 12 12
#> 13 13
#> 14 14
#> 15 15
#> 16 16
#> 17 17
#> 18 18
#> 19 19
#> 20 20
#> 21 21
#> 22 22
#> 23 23
#> 24 24
#> 25 25
#> 26 26
#> 27 27
#> 28 28
#> 29 29
#> 30 30
#> 31 31
#> 32 32
#> 33 33
#> 34 34
#> 35 35
#> 36 36
#> 37 37
#> 38 38
#> 39 39
#> 40 40
#> 41 41
#> 42 42
#> 43 43
#> 44 44
#> 45 45
#> 46 46
#> 47 47
#> 48 48
#> 49 49
#> 50 50
#> 51 51
#> 52 52
#> 53 53
#> 54 54
#> 55 55
#> 56 56
#> 57 57
#> 58 58
#> 59 59
#> 60 60
#> 61 61
#> 62 62
#> 63 63
#> 64 64
#> 65 65
#> 66 66
#> 67 67
#> 68 68
#> 69 69
#> 70 70
#> 71 71
#> 72 72
#> 73 73
#> 74 74
#> 75 75
#> 76 76
#> 77 77
#> 78 78
#> 79 79
#> 80 80
#> 81 81
#> 82 82
#> 83 83
#> 84 84
#> 85 85
#> 86 86
#> 87 87
#> 88 88
#> 89 89
#> 90 90
#> 91 91
#> 92 92
#> 93 93
#> 94 94
#> 95 95
#> 96 96
#> 97 97
#> 98 98
#> 99 99
#> 100 100
#> 101 101
#> 102 102
#> 103 103
#> 104 104
#> 105 105
#> 106 106
#> 107 107
#> 108 108
#> 109 109
#> 110 110
#> 111 111
#> 112 112
#> 113 113
#> 114 114
#> 115 115
#> 116 116
#> 117 117
#> 118 118
#> 119 119
#> 120 120
#> 121 121
#> 122 122
#> 123 123
#> 124 124
#> 125 125
#> 126 126
#> 127 127
#> 128 128
#> 129 129
#> 130 130
#> 131 131
#> 132 132
#> 133 133
#> 134 134
#> 135 135
#> 136 136
#> 137 137
#> 138 138
#> 139 139
#> 140 140
#> 141 141
#> 142 142
#> 143 143
#> 144 144
#> 145 145
#> 146 146
#> 147 147
#> 148 148
#> 149 149
#> 150 150
#> 151 151
#> 152 152
#> 153 153
#> 154 154
#> 155 155
#> 156 156
#> 157 157
#> 158 158
#> 159 159
#> 160 160
#> 161 161
#> 162 162
#> 163 163
#> 164 164
#> 165 165
#> 166 166
#> 167 167
#> 168 168
#> 169 169
#> 170 170
#> 171 171
#> 172 172
#> 173 173
#> 174 174
#> 175 175
#> 176 176
#> 177 177
#> 178 178
#> 179 179
#> 180 180
#> 181 181
#> 182 182
#> 183 183
#> 184 184
#> 185 185
#> 186 186
#> 187 187
#> 188 188
#> 189 189
#> 190 190
#> 191 191
#> 192 192
#> 193 193
#> 194 194
#> 195 195
#> 196 196
#> 197 197
#> 198 198
#> 199 199
#> 200 200
#> 201 201
#> 202 202
#> 203 203
#> 204 204
#> 205 205
#> 206 206
#> 207 207
#> 208 208
#> 209 209
#> 210 210
#> 211 211
#> 212 212
#> 213 213
#> 214 214
#> 215 215
#> 216 216
#> 217 217
#> 218 218
#> 219 219
#> 220 220
#> 221 221
#> 222 222
#> 223 223
#> 224 224
#> 225 225
#> 226 226
#> 227 227
#> 228 228
#> 229 229
#> 230 230
#> 231 231
#> 232 232
#> 233 233
#> 234 234
#> 235 235
#> 236 236
#> 237 237
#> 238 238
#> 239 239
#> 240 240
#> 241 241
#> 242 242
#> 243 243
#> 244 244
#> 245 245
#> 246 246
#> 247 247
#> 248 248
#> 249 249
#> 250 250
#> 251 251
#> 252 252
#> 253 253
#> 254 254
#> 255 255
#> 256 256
#> 257 257
#> 258 258
#> 259 259
#> 260 260
#> 261 261
#> 262 262
#> 263 263
#> 264 264
#> 265 265
#> 266 266
#> 267 267
#> 268 268
#> 269 269
#> 270 270
#> 271 271
#> 272 272
#> 273 273
#> 274 274
#> 275 275
#> 276 276
#> 277 277
#> 278 278
#> 279 279
#> 280 280
#> 281 281
#> 282 282
#> 283 283
#> 284 284
#> 285 285
#> 286 286
#> 287 287
#> 288 288
#> 289 289
#> 290 290
#> 291 291
#> 292 292
#> 293 293
#> 294 294
#> 295 295
#> 296 296
#> 297 297
#> 298 298
#> 299 299
#> 300 300
#> 301 301
#> 302 302
#> 303 303
#> 304 304
#> 305 305
#> 306 306
#> 307 307
#> 308 308
#> 309 309
#> 310 310
#> 311 311
#> 312 312
#> 313 313
#> 314 314
#> 315 315
#> 316 316
#> 317 317
#> 318 318
#> 319 319
#> 320 320
#> 321 321
#> 322 322
#> 323 323
#> 324 324
#> 325 325
#> 326 326
#> 327 327
#> 328 328
#> 329 329
#> 330 330
#> 331 331
#> 332 332
#> 333 333
#> 334 334
#> 335 335
#> 336 336
#> 337 337
#> 338 338
#> 339 339
#> 340 340
#> 341 341
#> 342 342
#> 343 343
#> 344 344
#> 345 345
#> 346 346
#> 347 347
#> 348 348
#> 349 349
#> 350 350
#> 351 351
#> 352 352
#> 353 353
#> 354 354
#> 355 355
#> 356 356
#> 357 357
#> 358 358
#> 359 359
#> 360 360
#> 361 361
#> 362 362
#> 363 363
#> 364 364
#> 365 365
#> 366 366
#> 367 367
#> 368 368
#> 369 369
#> 370 370
#> 371 371
#> 372 372
#> 373 373
#> 374 374
#> 375 375
#> 376 376
#> 377 377
#> 378 378
#> 379 379
#> 380 380
#> 381 381
#> 382 382
#> 383 383
#> 384 384
#> 385 385
#> 386 386
#> 387 387
#> 388 388
#> 389 389
#> 390 390
#> 391 391
#> 392 392
#> 393 393
#> 394 394
#> 395 395
#> 396 396
#> 397 397
#> 398 398
#> 399 399
#> 400 400
#> 401 401
#> 402 402
#> 403 403
#> 404 404
#> 405 405
#> 406 406
#> 407 407
#> 408 408
#> 409 409
#> 410 410
#> 411 411
#> 412 412
#> 413 413
#> 414 414
#> 415 415
#> 416 416
#> 417 417
#> 418 418
#> 419 419
#> 420 420
#> 421 421
#> 422 422
#> 423 423
#> 424 424
#> 425 425
#> 426 426
#> 427 427
#> 428 428
#> 429 429
#> 430 430
#> 431 431
#> 432 432
#> 433 433
#> 434 434
#> 435 435
#> 436 436
#> 437 437
#> 438 438
#> 439 439
#> 440 440
#> 441 441
#> 442 442
#> 443 443
#> 444 444
#> 445 445
#> 446 446
#> 447 447
#> 448 448
#> 449 449
#> 450 450
#> 451 451
#> 452 452
#> 453 453
#> 454 454
#> 455 455
#> 456 456
#> 457 457
#> 458 458
#> 459 459
#> 460 460
#> 461 461
#> 462 462
#> 463 463
#> 464 464
#> 465 465
#> 466 466
#> 467 467
#> 468 468
#> 469 469
#> 470 470
#> 471 471
#> 472 472
#> 473 473
#> 474 474
#> 475 475
#> 476 476
#> 477 477
#> 478 478
#> 479 479
#> 480 480
#> 481 481
#> 482 482
#> 483 483
#> 484 484
#> 485 485
#> 486 486
#> 487 487
#> 488 488
#> 489 489
#> 490 490
#> 491 491
#> 492 492
#> 493 493
#> 494 494
#> 495 495
#> 496 496
#> 497 497
#> 498 498
#> 499 499
#> 500 500
#> 501 501
#> 502 502
#> 503 503
#> 504 504
#> 505 505
#> 506 506
#> 507 507
#> 508 508
#> 509 509
#> 510 510
#> 511 511
#> 512 512
#> 513 513
#> 514 514
#> 515 515
#> 516 516
#> 517 517
#> 518 518
#> 519 519
#> 520 520
#> 521 521
#> 522 522
#> 523 523
#> 524 524
#> 525 525
#> 526 526
#> 527 527
#> 528 528
#> 529 529
#> 530 530
#> 531 531
#> 532 532
#> 533 533
#> 534 534
#> 535 535
#> 536 536
#> 537 537
#> 538 538
#> 539 539
#> 540 540
#> 541 541
#> 542 542
#> 543 543
#> 544 544
#> 545 545
#> 546 546
#> 547 547
#> 548 548
#> 549 549
#> 550 550
#> 551 551
#> 552 552
#> 553 553
#> 554 554
#> 555 555
#> 556 556
#> 557 557
#> 558 558
#> 559 559
#> 560 560
#> 561 561
#> 562 562
#> 563 563
#> 564 564
#> 565 565
#> 566 566
#> 567 567
#> 568 568
#> 569 569
#> 570 570
#> 571 571
#> 572 572
#> 573 573
#> 574 574
#> 575 575
#> 576 576
#> 577 577
#> 578 578
#> 579 579
#> 580 580
#> 581 581
#> 582 582
#> 583 583
#> 584 584
#> 585 585
#> 586 586
#> 587 587
#> 588 588
#> 589 589
#> 590 590
#> 591 591
#> 592 592
#> 593 593
#> 594 594
#> 595 595
#> 596 596
#> 597 597
#> 598 598
#> 599 599
#> 600 600
#> 601 601
#> 602 602
#> 603 603
#> 604 604
#> 605 605
#> 606 606
#> 607 607
#> 608 608
#> 609 609
#> 610 610
#> 611 611
#> 612 612
#> 613 613
#> 614 614
#> 615 615
#> 616 616
#> 617 617
#> 618 618
#> 619 619
#> 620 620
#> 621 621
#> 622 622
#> 623 623
#> 624 624
#> 625 625
#> 626 626
#> 627 627
#> 628 628
#> 629 629
#> 630 630
#> 631 631
#> 632 632
#> 633 633
#> 634 634
#> 635 635
#> 636 636
#> 637 637
#> 638 638
#> 639 639
#> 640 640
#> 641 641
#> 642 642
#> 643 643
#> 644 644
#> 645 645
#> 646 646
#> 647 647
#> 648 648
#> 649 649
#> 650 650
#> 651 651
#> 652 652
#> 653 653
#> 654 654
#> 655 655
#> 656 656
#> 657 657
#> 658 658
#> 659 659
#> 660 660
#> 661 661
#> 662 662
#> 663 663
#> 664 664
#> 665 665
#> 666 666
#> 667 667
#> 668 668
#> 669 669
#> 670 670
#> 671 671
#> 672 672
#> 673 673
#> 674 674
#> 675 675
#> 676 676
#> 677 677
#> 678 678
#> 679 679
#> 680 680
#> 681 681
#> 682 682
#> 683 683
#> 684 684
#> 685 685
#> 686 686
#> 687 687
#> 688 688
#> 689 689
#> 690 690
#> 691 691
#> 692 692
#> 693 693
#> 694 694
#> 695 695
#> 696 696
#> 697 697
#> 698 698
#> 699 699
#> 700 700
#> 701 701
#> 702 702
#> 703 703
#> 704 704
#> 705 705
#> 706 706
#> 707 707
#> 708 708
#> 709 709
#> 710 710
#> 711 711
#> 712 712
#> 713 713
#> 714 714
#> 715 715
#> 716 716
#> 717 717
#> 718 718
#> 719 719
#> 720 720
#> 721 721
#> 722 722
#> 723 723
#> 724 724
#> 725 725
#> 726 726
#> 727 727
#> 728 728
#> 729 729
#> 730 730
#> 731 731
#> 732 732
#> 733 733
#> 734 734
#> 735 735
#> 736 736
#> 737 737
#> 738 738
#> 739 739
#> 740 740
#> 741 741
#> 742 742
#> 743 743
#> 744 744
#> 745 745
#> 746 746
#> 747 747
#> 748 748
#> 749 749
#> 750 750
#> 751 751
#> 752 752
#> 753 753
#> 754 754
#> 755 755
#> 756 756
#> 757 757
#> 758 758
#> 759 759
#> 760 760
#> 761 761
#> 762 762
#> 763 763
#> 764 764
#> 765 765
#> 766 766
#> 767 767
#> 768 768
#> 769 769
#> 770 770
#> 771 771
#> 772 772
#> 773 773
#> 774 774
#> 775 775
#> 776 776
#> 777 777
#> 778 778
#> 779 779
#> 780 780
#> 781 781
#> 782 782
#> 783 783
#> 784 784
#> 785 785
#> 786 786
#> 787 787
#> 788 788
#> 789 789
#> 790 790
#> 791 791
#> 792 792
#> 793 793
#> 794 794
#> 795 795
#> 796 796
#> 797 797
#> 798 798
#> 799 799
#> 800 800
#> 801 801
#> 802 802
#> 803 803
#> 804 804
#> 805 805
#> 806 806
#> 807 807
#> 808 808
#> 809 809
#> 810 810
#> 811 811
#> 812 812
#> 813 813
#> 814 814
#> 815 815
#> 816 816
#> 817 817
#> 818 818
#> 819 819
#> 820 820
#> 821 821
#> 822 822
#> 823 823
#> 824 824
#> 825 825
#> 826 826
#> 827 827
#> 828 828
#> 829 829
#> 830 830
#> 831 831
#> 832 832
#> 833 833
#> 834 834
#> 835 835
#> 836 836
#> 837 837
#> 838 838
#> 839 839
#> 840 840
#> 841 841
#> 842 842
#> 843 843
#> 844 844
#> 845 845
#> 846 846
#> 847 847
#> 848 848
#> 849 849
#> 850 850
#> 851 851
#> 852 852
#> 853 853
#> 854 854
#> 855 855
#> 856 856
#> 857 857
#> 858 858
#> 859 859
#> 860 860
#> 861 861
#> 862 862
#> 863 863
#> 864 864
#> 865 865
#> 866 866
#> 867 867
#> 868 868
#> 869 869
#> 870 870
#> 871 871
#> 872 872
#> 873 873
#> 874 874
#> 875 875
#> 876 876
#> 877 877
#> 878 878
#> 879 879
#> 880 880
#> 881 881
#> 882 882
#> 883 883
#> 884 884
#> 885 885
#> 886 886
#> 887 887
#> 888 888
#> 889 889
#> 890 890
#> 891 891
#> 892 892
#> 893 893
#> 894 894
#> 895 895
#> 896 896
#> 897 897
#> 898 898
#> 899 899
#> 900 900
#> 901 901
#> 902 902
#> 903 903
#> 904 904
#> 905 905
#> 906 906
#> 907 907
#> 908 908
#> 909 909
#> 910 910
#> 911 911
#> 912 912
#> 913 913
#> 914 914
#> 915 915
#> 916 916
#> 917 917
#> 918 918
#> 919 919
#> 920 920
#> 921 921
#> 922 922
#> 923 923
#> 924 924
#> 925 925
#> 926 926
#> 927 927
#> 928 928
#> 929 929
#> 930 930
#> 931 931
#> 932 932
#> 933 933
#> 934 934
#> 935 935
#> 936 936
#> 937 937
#> 938 938
#> 939 939
#> 940 940
#> 941 941
#> 942 942
#> 943 943
#> 944 944
#> 945 945
#> 946 946
#> 947 947
#> 948 948
#> 949 949
#> 950 950
#> 951 951
#> 952 952
#> 953 953
#> 954 954
#> 955 955
#> 956 956
#> 957 957
#> 958 958
#> 959 959
#> 960 960
#> 961 961
#> 962 962
#> 963 963
#> 964 964
#> 965 965
#> 966 966
#> 967 967
#> 968 968
#> 969 969
#> 970 970
#> 971 971
#> 972 972
#> 973 973
#> 974 974
#> 975 975
#> 976 976
#> 977 977
#> 978 978
#> 979 979
#> 980 980
#> 981 981
#> 982 982
#> 983 983
#> 984 984
#> 985 985
#> 986 986
#> 987 987
#> 988 988
#> 989 989
#> 990 990
#> 991 991
#> 992 992
#> 993 993
#> 994 994
#> 995 995
#> 996 996
#> 997 997
#> 998 998
#> 999 999
#> 1000 1000
Created on 2020-12-27 by the reprex package (v0.3.0)
We can use sqlite3_get_autocommit() to check if an external transaction has started, and use a normal transaction if not, further avoiding conflicts.
This seems like a race condition to me.
I would just try to set PRAGMA busy_timeout
in the parallel code. But I might be missing why retrying is needed. FWIW liteq sets it to 10 seconds and works pretty well with that: https://github.com/r-lib/liteq/blob/b2436d59fcd7c293d3d196fdf060b699b693525f/R/db.R#L7
Of course it depends how long your transactions really are, but for parallelism you should aim for snappy ones.
Btw. one catch is that SQLite resets the timeout sometimes, so it is best to set it again at the beginning of each DB operation. E.g. https://github.com/r-lib/liteq/commit/25ea557ee995e03a93f80742e084d108b2163468
If RSQLite uses hardcoded savepoint names, that's indeed not ideal. They could include the process id, or even better, they could be random.
I don't see the race condition (assuming single-threaded access), sqlite3_get_autocommit()
checks if the own session is inside a transaction.
We need early and reliable failure. A busy_timeout
may add a bit of convenience.
Good idea using process IDs as savepoint names, these should not clash (but random numbers could, in theory). How to determine portably?
We need early and reliable failure.
I don't understand. Isn't the database blocked
error an early failure? I thought we wanted to make parallel transactions work.
Good idea using process IDs as savepoint names, these should not clash
They actually might, e.g. if two packages are running independent transactions from the same process. Not very likely, but it is easy to generate random strings, and those are better imo. Or include the pid and have a short random string as well.
Using PID and a random string as savepoint The original issue -- retrying until writing is possible -- can be solved with a PRAGMA busy_timeout
or manually retrying BEGIN IMMEDIATE TRANSACTION
until success.
I ran your example / reprex, but the recording errors still persist. The test showed 990 recordings successfully, instead of 1000. I will wait for the release on CRAN to perform a new test. NOTE: In the reprex terminal, it informs that 990 records were recorded. But in the database it says 991
Result SQLite: bd_test.zip
> sessionInfo()
R version 4.0.2 (2020-06-22)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 19042)
Matrix products: default
locale:
[1] LC_COLLATE=Portuguese_Brazil.1252 LC_CTYPE=Portuguese_Brazil.1252 LC_MONETARY=Portuguese_Brazil.1252
[4] LC_NUMERIC=C LC_TIME=Portuguese_Brazil.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] purrr_0.3.4 magrittr_2.0.1 furrr_0.2.1 future_1.21.0 RSQLite_2.2.2.9000 DBI_1.1.1.9000
loaded via a namespace (and not attached):
[1] Rcpp_1.0.5 pillar_1.4.7 compiler_4.0.2 prettyunits_1.1.1 remotes_2.2.0 tools_4.0.2
[7] digest_0.6.27 pkgbuild_1.2.0 bit_4.0.4 evaluate_0.14 tibble_3.0.4 memoise_1.1.0
[13] lifecycle_0.2.0 pkgconfig_2.0.3 rlang_0.4.10 reprex_0.3.0 cli_2.2.0 rstudioapi_0.13
[19] curl_4.3 yaml_2.2.1 parallel_4.0.2 xfun_0.20 knitr_1.30 withr_2.3.0
[25] fs_1.5.0 vctrs_0.3.6 globals_0.14.0 rprojroot_2.0.2 bit64_4.0.5 glue_1.4.2
[31] listenv_0.8.0 R6_2.5.0 processx_3.4.5 fansi_0.4.1 parallelly_1.23.0 rmarkdown_2.6
[37] clipr_0.7.1 whisker_0.4 callr_3.5.1 blob_1.2.1 htmltools_0.5.0 ps_1.5.0
[43] codetools_0.2-18 ellipsis_0.3.1 assertthat_0.2.1 crayon_1.3.4
library(DBI)
library(RSQLite)
library(furrr)
#> Warning: package 'furrr' was built under R version 4.0.3
#> Carregando pacotes exigidos: future
#> Loading required package: future
library(future)
library(magrittr)
#> Warning: package 'magrittr' was built under R version 4.0.3
library(purrr)
#>
#> Attaching package: 'purrr'
#> The following object is masked from 'package:magrittr':
#>
#> set_names
#>
#> Attaching package: 'purrr'
#> The following object is masked from 'package:magrittr':
#>
#> set_names
n_teste <- 1:1000
unlink("bd_test.db")
connect_sgbd <- function() {
conexao <- DBI::dbConnect(RSQLite::SQLite(),
dbname = file.path("bd_test.db")
)
return(conexao)
}
teste_write_sqlite <- function(n_teste) {
tb_teste_iris <- iris[1, ] %>%
dplyr::mutate(n_loop = n_teste)
tentativas <- purrr::rate_delay(
pause = 2,
max_times = 20
)
insist_execute_sqlite <- purrr::insistently(
DBI::dbExecute, tentativas,
quiet = FALSE
)
conn <- connect_sgbd()
on.exit(dbDisconnect(conn))
tryCatch(
{
insist_execute_sqlite(conn, "BEGIN IMMEDIATE TRANSACTION")
# Rollback on failure
on.exit(try(dbExecute(conn, "ROLLBACK TRANSACTION")))
out <- dbWriteTable(conn, "tb_teste_iris", tb_teste_iris, append = TRUE)
dbExecute(conn, "COMMIT TRANSACTION")
# Don't rollback on success
on.exit(NULL)
print(paste(n_teste, "-", out))
},
error = function(e) {
print(paste(n_teste, "-", conditionMessage(e)))
}
)
}
future::plan("multisession",
workers = 8
)
options(future.rng.onMisuse = "ignore")
furrr::future_walk(n_teste, teste_write_sqlite, .progress = TRUE)
#> [1] "1 - TRUE"
#> [1] "2 - TRUE"
#> [1] "3 - TRUE"
#> [1] "4 - TRUE"
#> [1] "5 - TRUE"
#> [1] "6 - TRUE"
#> [1] "7 - TRUE"
#> [1] "8 - TRUE"
#> [1] "9 - TRUE"
#> [1] "10 - TRUE"
#> [1] "11 - TRUE"
#> [1] "12 - TRUE"
#> [1] "13 - TRUE"
#> [1] "14 - TRUE"
#> [1] "15 - TRUE"
#> [1] "16 - TRUE"
#> [1] "17 - TRUE"
#> [1] "18 - TRUE"
#> [1] "19 - TRUE"
#> [1] "20 - TRUE"
#> [1] "21 - TRUE"
#> [1] "22 - TRUE"
#> [1] "23 - TRUE"
#> [1] "24 - TRUE"
#> [1] "25 - TRUE"
#> [1] "26 - TRUE"
#> [1] "27 - TRUE"
#> [1] "28 - TRUE"
#> [1] "29 - TRUE"
#> [1] "30 - TRUE"
#> [1] "31 - TRUE"
#> [1] "32 - TRUE"
#> [1] "33 - TRUE"
#> [1] "34 - TRUE"
#> [1] "35 - TRUE"
#> [1] "36 - TRUE"
#> [1] "37 - TRUE"
#> [1] "38 - TRUE"
#> [1] "39 - TRUE"
#> [1] "40 - TRUE"
#> [1] "41 - TRUE"
#> [1] "42 - TRUE"
#> [1] "43 - TRUE"
#> [1] "44 - TRUE"
#> [1] "45 - TRUE"
#> [1] "46 - TRUE"
#> [1] "47 - TRUE"
#> [1] "48 - TRUE"
#> [1] "49 - TRUE"
#> [1] "50 - TRUE"
#> [1] "51 - TRUE"
#> [1] "52 - TRUE"
#> [1] "53 - TRUE"
#> [1] "54 - TRUE"
#> [1] "55 - TRUE"
#> [1] "56 - TRUE"
#> [1] "57 - TRUE"
#> [1] "58 - TRUE"
#> [1] "59 - TRUE"
#> [1] "60 - TRUE"
#> [1] "61 - TRUE"
#> [1] "62 - TRUE"
#> [1] "63 - TRUE"
#> [1] "64 - database is locked"
#> [1] "65 - TRUE"
#> [1] "66 - TRUE"
#> [1] "67 - TRUE"
#> [1] "68 - TRUE"
#> [1] "69 - TRUE"
#> [1] "70 - TRUE"
#> [1] "71 - TRUE"
#> [1] "72 - TRUE"
#> [1] "73 - TRUE"
#> [1] "74 - TRUE"
#> [1] "75 - TRUE"
#> [1] "76 - TRUE"
#> [1] "77 - TRUE"
#> [1] "78 - TRUE"
#> [1] "79 - TRUE"
#> [1] "80 - TRUE"
#> [1] "81 - TRUE"
#> [1] "82 - TRUE"
#> [1] "83 - database is locked"
#> [1] "84 - TRUE"
#> [1] "85 - TRUE"
#> [1] "86 - TRUE"
#> [1] "87 - TRUE"
#> [1] "88 - TRUE"
#> [1] "89 - TRUE"
#> [1] "90 - TRUE"
#> [1] "91 - TRUE"
#> [1] "92 - TRUE"
#> [1] "93 - TRUE"
#> [1] "94 - TRUE"
#> [1] "95 - TRUE"
#> [1] "96 - TRUE"
#> [1] "97 - TRUE"
#> [1] "98 - TRUE"
#> [1] "99 - TRUE"
#> [1] "100 - TRUE"
#> [1] "101 - TRUE"
#> [1] "102 - TRUE"
#> [1] "103 - TRUE"
#> [1] "104 - TRUE"
#> [1] "105 - TRUE"
#> [1] "106 - TRUE"
#> [1] "107 - TRUE"
#> [1] "108 - TRUE"
#> [1] "109 - TRUE"
#> [1] "110 - TRUE"
#> [1] "111 - TRUE"
#> [1] "112 - TRUE"
#> [1] "113 - TRUE"
#> [1] "114 - TRUE"
#> [1] "115 - TRUE"
#> [1] "116 - TRUE"
#> [1] "117 - TRUE"
#> [1] "118 - TRUE"
#> [1] "119 - TRUE"
#> [1] "120 - TRUE"
#> [1] "121 - TRUE"
#> [1] "122 - TRUE"
#> [1] "123 - TRUE"
#> [1] "124 - TRUE"
#> [1] "125 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "126 - TRUE"
#> [1] "127 - TRUE"
#> [1] "128 - TRUE"
#> [1] "129 - TRUE"
#> [1] "130 - TRUE"
#> [1] "131 - TRUE"
#> [1] "132 - TRUE"
#> [1] "133 - TRUE"
#> [1] "134 - TRUE"
#> [1] "135 - TRUE"
#> [1] "136 - TRUE"
#> [1] "137 - TRUE"
#> [1] "138 - TRUE"
#> [1] "139 - TRUE"
#> [1] "140 - TRUE"
#> [1] "141 - TRUE"
#> [1] "142 - TRUE"
#> [1] "143 - TRUE"
#> [1] "144 - TRUE"
#> [1] "145 - TRUE"
#> [1] "146 - TRUE"
#> [1] "147 - TRUE"
#> [1] "148 - TRUE"
#> [1] "149 - TRUE"
#> [1] "150 - TRUE"
#> [1] "151 - TRUE"
#> [1] "152 - TRUE"
#> [1] "153 - TRUE"
#> [1] "154 - TRUE"
#> [1] "155 - TRUE"
#> [1] "156 - TRUE"
#> [1] "157 - TRUE"
#> [1] "158 - TRUE"
#> [1] "159 - TRUE"
#> [1] "160 - TRUE"
#> [1] "161 - TRUE"
#> [1] "162 - TRUE"
#> [1] "163 - TRUE"
#> [1] "164 - TRUE"
#> [1] "165 - TRUE"
#> [1] "166 - TRUE"
#> [1] "167 - TRUE"
#> [1] "168 - TRUE"
#> [1] "169 - TRUE"
#> [1] "170 - TRUE"
#> [1] "171 - TRUE"
#> [1] "172 - TRUE"
#> [1] "173 - TRUE"
#> [1] "174 - TRUE"
#> [1] "175 - TRUE"
#> [1] "176 - TRUE"
#> [1] "177 - TRUE"
#> [1] "178 - TRUE"
#> [1] "179 - TRUE"
#> [1] "180 - TRUE"
#> [1] "181 - TRUE"
#> [1] "182 - TRUE"
#> [1] "183 - TRUE"
#> [1] "184 - TRUE"
#> [1] "185 - TRUE"
#> [1] "186 - TRUE"
#> [1] "187 - TRUE"
#> [1] "188 - TRUE"
#> [1] "189 - TRUE"
#> [1] "190 - TRUE"
#> [1] "191 - TRUE"
#> [1] "192 - TRUE"
#> [1] "193 - TRUE"
#> [1] "194 - TRUE"
#> [1] "195 - TRUE"
#> [1] "196 - TRUE"
#> [1] "197 - TRUE"
#> [1] "198 - TRUE"
#> [1] "199 - TRUE"
#> [1] "200 - TRUE"
#> [1] "201 - TRUE"
#> [1] "202 - TRUE"
#> [1] "203 - TRUE"
#> [1] "204 - TRUE"
#> [1] "205 - TRUE"
#> [1] "206 - TRUE"
#> [1] "207 - TRUE"
#> [1] "208 - TRUE"
#> [1] "209 - TRUE"
#> [1] "210 - TRUE"
#> [1] "211 - TRUE"
#> [1] "212 - TRUE"
#> [1] "213 - TRUE"
#> [1] "214 - TRUE"
#> [1] "215 - TRUE"
#> [1] "216 - TRUE"
#> [1] "217 - TRUE"
#> [1] "218 - TRUE"
#> [1] "219 - TRUE"
#> [1] "220 - TRUE"
#> [1] "221 - TRUE"
#> [1] "222 - TRUE"
#> [1] "223 - TRUE"
#> [1] "224 - TRUE"
#> [1] "225 - TRUE"
#> [1] "226 - TRUE"
#> [1] "227 - TRUE"
#> [1] "228 - TRUE"
#> [1] "229 - TRUE"
#> [1] "230 - TRUE"
#> [1] "231 - TRUE"
#> [1] "232 - TRUE"
#> [1] "233 - TRUE"
#> [1] "234 - TRUE"
#> [1] "235 - TRUE"
#> [1] "236 - TRUE"
#> [1] "237 - TRUE"
#> [1] "238 - TRUE"
#> [1] "239 - TRUE"
#> [1] "240 - TRUE"
#> [1] "241 - TRUE"
#> [1] "242 - TRUE"
#> [1] "243 - TRUE"
#> [1] "244 - TRUE"
#> [1] "245 - TRUE"
#> [1] "246 - TRUE"
#> [1] "247 - TRUE"
#> [1] "248 - TRUE"
#> [1] "249 - TRUE"
#> [1] "250 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "251 - TRUE"
#> [1] "252 - TRUE"
#> [1] "253 - TRUE"
#> [1] "254 - TRUE"
#> [1] "255 - TRUE"
#> [1] "256 - TRUE"
#> [1] "257 - TRUE"
#> [1] "258 - TRUE"
#> [1] "259 - TRUE"
#> [1] "260 - TRUE"
#> [1] "261 - TRUE"
#> [1] "262 - TRUE"
#> [1] "263 - TRUE"
#> [1] "264 - TRUE"
#> [1] "265 - TRUE"
#> [1] "266 - TRUE"
#> [1] "267 - TRUE"
#> [1] "268 - TRUE"
#> [1] "269 - TRUE"
#> [1] "270 - TRUE"
#> [1] "271 - TRUE"
#> [1] "272 - TRUE"
#> [1] "273 - TRUE"
#> [1] "274 - TRUE"
#> [1] "275 - TRUE"
#> [1] "276 - TRUE"
#> [1] "277 - TRUE"
#> [1] "278 - TRUE"
#> [1] "279 - TRUE"
#> [1] "280 - TRUE"
#> [1] "281 - TRUE"
#> [1] "282 - TRUE"
#> [1] "283 - TRUE"
#> [1] "284 - TRUE"
#> [1] "285 - TRUE"
#> [1] "286 - TRUE"
#> [1] "287 - TRUE"
#> [1] "288 - TRUE"
#> [1] "289 - TRUE"
#> [1] "290 - TRUE"
#> [1] "291 - TRUE"
#> [1] "292 - TRUE"
#> [1] "293 - TRUE"
#> [1] "294 - TRUE"
#> [1] "295 - TRUE"
#> [1] "296 - TRUE"
#> [1] "297 - TRUE"
#> [1] "298 - TRUE"
#> [1] "299 - TRUE"
#> [1] "300 - database is locked"
#> [1] "301 - TRUE"
#> [1] "302 - TRUE"
#> [1] "303 - TRUE"
#> [1] "304 - TRUE"
#> [1] "305 - TRUE"
#> [1] "306 - TRUE"
#> [1] "307 - TRUE"
#> [1] "308 - TRUE"
#> [1] "309 - TRUE"
#> [1] "310 - TRUE"
#> [1] "311 - TRUE"
#> [1] "312 - TRUE"
#> [1] "313 - TRUE"
#> [1] "314 - TRUE"
#> [1] "315 - TRUE"
#> [1] "316 - TRUE"
#> [1] "317 - TRUE"
#> [1] "318 - TRUE"
#> [1] "319 - TRUE"
#> [1] "320 - TRUE"
#> [1] "321 - TRUE"
#> [1] "322 - TRUE"
#> [1] "323 - TRUE"
#> [1] "324 - TRUE"
#> [1] "325 - TRUE"
#> [1] "326 - TRUE"
#> [1] "327 - TRUE"
#> [1] "328 - TRUE"
#> [1] "329 - TRUE"
#> [1] "330 - TRUE"
#> [1] "331 - TRUE"
#> [1] "332 - TRUE"
#> [1] "333 - TRUE"
#> [1] "334 - TRUE"
#> [1] "335 - TRUE"
#> [1] "336 - TRUE"
#> [1] "337 - TRUE"
#> [1] "338 - TRUE"
#> [1] "339 - TRUE"
#> [1] "340 - TRUE"
#> [1] "341 - TRUE"
#> [1] "342 - TRUE"
#> [1] "343 - TRUE"
#> [1] "344 - TRUE"
#> [1] "345 - TRUE"
#> [1] "346 - TRUE"
#> [1] "347 - TRUE"
#> [1] "348 - TRUE"
#> [1] "349 - TRUE"
#> [1] "350 - TRUE"
#> [1] "351 - TRUE"
#> [1] "352 - TRUE"
#> [1] "353 - TRUE"
#> [1] "354 - TRUE"
#> [1] "355 - TRUE"
#> [1] "356 - TRUE"
#> [1] "357 - TRUE"
#> [1] "358 - TRUE"
#> [1] "359 - TRUE"
#> [1] "360 - TRUE"
#> [1] "361 - TRUE"
#> [1] "362 - TRUE"
#> [1] "363 - TRUE"
#> [1] "364 - TRUE"
#> [1] "365 - TRUE"
#> [1] "366 - TRUE"
#> [1] "367 - TRUE"
#> [1] "368 - TRUE"
#> [1] "369 - TRUE"
#> [1] "370 - TRUE"
#> [1] "371 - TRUE"
#> [1] "372 - TRUE"
#> [1] "373 - TRUE"
#> [1] "374 - TRUE"
#> [1] "375 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "376 - TRUE"
#> [1] "377 - TRUE"
#> [1] "378 - TRUE"
#> [1] "379 - TRUE"
#> [1] "380 - TRUE"
#> [1] "381 - TRUE"
#> [1] "382 - database is locked"
#> [1] "383 - TRUE"
#> [1] "384 - TRUE"
#> [1] "385 - TRUE"
#> [1] "386 - TRUE"
#> [1] "387 - TRUE"
#> [1] "388 - TRUE"
#> [1] "389 - TRUE"
#> [1] "390 - TRUE"
#> [1] "391 - TRUE"
#> [1] "392 - TRUE"
#> [1] "393 - TRUE"
#> [1] "394 - TRUE"
#> [1] "395 - TRUE"
#> [1] "396 - TRUE"
#> [1] "397 - TRUE"
#> [1] "398 - TRUE"
#> [1] "399 - TRUE"
#> [1] "400 - TRUE"
#> [1] "401 - TRUE"
#> [1] "402 - TRUE"
#> [1] "403 - TRUE"
#> [1] "404 - TRUE"
#> [1] "405 - TRUE"
#> [1] "406 - TRUE"
#> [1] "407 - TRUE"
#> [1] "408 - TRUE"
#> [1] "409 - TRUE"
#> [1] "410 - TRUE"
#> [1] "411 - TRUE"
#> [1] "412 - TRUE"
#> [1] "413 - TRUE"
#> [1] "414 - TRUE"
#> [1] "415 - TRUE"
#> [1] "416 - TRUE"
#> [1] "417 - TRUE"
#> [1] "418 - TRUE"
#> [1] "419 - TRUE"
#> [1] "420 - TRUE"
#> [1] "421 - TRUE"
#> [1] "422 - TRUE"
#> [1] "423 - TRUE"
#> [1] "424 - TRUE"
#> [1] "425 - TRUE"
#> [1] "426 - TRUE"
#> [1] "427 - TRUE"
#> [1] "428 - TRUE"
#> [1] "429 - TRUE"
#> [1] "430 - TRUE"
#> [1] "431 - TRUE"
#> [1] "432 - TRUE"
#> [1] "433 - TRUE"
#> [1] "434 - TRUE"
#> [1] "435 - TRUE"
#> [1] "436 - TRUE"
#> [1] "437 - TRUE"
#> [1] "438 - TRUE"
#> [1] "439 - TRUE"
#> [1] "440 - TRUE"
#> [1] "441 - TRUE"
#> [1] "442 - TRUE"
#> [1] "443 - database is locked"
#> [1] "444 - TRUE"
#> [1] "445 - TRUE"
#> [1] "446 - TRUE"
#> [1] "447 - TRUE"
#> [1] "448 - TRUE"
#> [1] "449 - TRUE"
#> [1] "450 - TRUE"
#> [1] "451 - TRUE"
#> [1] "452 - TRUE"
#> [1] "453 - TRUE"
#> [1] "454 - TRUE"
#> [1] "455 - TRUE"
#> [1] "456 - TRUE"
#> [1] "457 - TRUE"
#> [1] "458 - TRUE"
#> [1] "459 - TRUE"
#> [1] "460 - TRUE"
#> [1] "461 - TRUE"
#> [1] "462 - TRUE"
#> [1] "463 - TRUE"
#> [1] "464 - TRUE"
#> [1] "465 - TRUE"
#> [1] "466 - TRUE"
#> [1] "467 - TRUE"
#> [1] "468 - TRUE"
#> [1] "469 - TRUE"
#> [1] "470 - TRUE"
#> [1] "471 - database is locked"
#> [1] "472 - TRUE"
#> [1] "473 - TRUE"
#> [1] "474 - TRUE"
#> [1] "475 - TRUE"
#> [1] "476 - TRUE"
#> [1] "477 - TRUE"
#> [1] "478 - TRUE"
#> [1] "479 - TRUE"
#> [1] "480 - TRUE"
#> [1] "481 - TRUE"
#> [1] "482 - TRUE"
#> [1] "483 - TRUE"
#> [1] "484 - TRUE"
#> [1] "485 - TRUE"
#> [1] "486 - TRUE"
#> [1] "487 - TRUE"
#> [1] "488 - TRUE"
#> [1] "489 - TRUE"
#> [1] "490 - TRUE"
#> [1] "491 - TRUE"
#> [1] "492 - TRUE"
#> [1] "493 - TRUE"
#> [1] "494 - TRUE"
#> [1] "495 - TRUE"
#> [1] "496 - TRUE"
#> [1] "497 - TRUE"
#> [1] "498 - TRUE"
#> [1] "499 - TRUE"
#> [1] "500 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "501 - TRUE"
#> [1] "502 - TRUE"
#> [1] "503 - TRUE"
#> [1] "504 - TRUE"
#> [1] "505 - TRUE"
#> [1] "506 - TRUE"
#> [1] "507 - TRUE"
#> [1] "508 - TRUE"
#> [1] "509 - TRUE"
#> [1] "510 - TRUE"
#> [1] "511 - TRUE"
#> [1] "512 - TRUE"
#> [1] "513 - TRUE"
#> [1] "514 - TRUE"
#> [1] "515 - TRUE"
#> [1] "516 - TRUE"
#> [1] "517 - TRUE"
#> [1] "518 - TRUE"
#> [1] "519 - TRUE"
#> [1] "520 - TRUE"
#> [1] "521 - TRUE"
#> [1] "522 - TRUE"
#> [1] "523 - TRUE"
#> [1] "524 - TRUE"
#> [1] "525 - TRUE"
#> [1] "526 - TRUE"
#> [1] "527 - TRUE"
#> [1] "528 - TRUE"
#> [1] "529 - TRUE"
#> [1] "530 - TRUE"
#> [1] "531 - TRUE"
#> [1] "532 - TRUE"
#> [1] "533 - TRUE"
#> [1] "534 - TRUE"
#> [1] "535 - TRUE"
#> [1] "536 - TRUE"
#> [1] "537 - TRUE"
#> [1] "538 - TRUE"
#> [1] "539 - TRUE"
#> [1] "540 - TRUE"
#> [1] "541 - TRUE"
#> [1] "542 - TRUE"
#> [1] "543 - TRUE"
#> [1] "544 - TRUE"
#> [1] "545 - TRUE"
#> [1] "546 - TRUE"
#> [1] "547 - TRUE"
#> [1] "548 - TRUE"
#> [1] "549 - TRUE"
#> [1] "550 - TRUE"
#> [1] "551 - TRUE"
#> [1] "552 - TRUE"
#> [1] "553 - TRUE"
#> [1] "554 - TRUE"
#> [1] "555 - TRUE"
#> [1] "556 - TRUE"
#> [1] "557 - TRUE"
#> [1] "558 - TRUE"
#> [1] "559 - TRUE"
#> [1] "560 - TRUE"
#> [1] "561 - TRUE"
#> [1] "562 - TRUE"
#> [1] "563 - TRUE"
#> [1] "564 - TRUE"
#> [1] "565 - TRUE"
#> [1] "566 - TRUE"
#> [1] "567 - TRUE"
#> [1] "568 - TRUE"
#> [1] "569 - TRUE"
#> [1] "570 - TRUE"
#> [1] "571 - TRUE"
#> [1] "572 - TRUE"
#> [1] "573 - TRUE"
#> [1] "574 - TRUE"
#> [1] "575 - TRUE"
#> [1] "576 - TRUE"
#> [1] "577 - TRUE"
#> [1] "578 - TRUE"
#> [1] "579 - TRUE"
#> [1] "580 - TRUE"
#> [1] "581 - TRUE"
#> [1] "582 - database is locked"
#> [1] "583 - TRUE"
#> [1] "584 - TRUE"
#> [1] "585 - TRUE"
#> [1] "586 - TRUE"
#> [1] "587 - TRUE"
#> [1] "588 - TRUE"
#> [1] "589 - TRUE"
#> [1] "590 - TRUE"
#> [1] "591 - TRUE"
#> [1] "592 - TRUE"
#> [1] "593 - TRUE"
#> [1] "594 - TRUE"
#> [1] "595 - TRUE"
#> [1] "596 - TRUE"
#> [1] "597 - TRUE"
#> [1] "598 - TRUE"
#> [1] "599 - TRUE"
#> [1] "600 - TRUE"
#> [1] "601 - TRUE"
#> [1] "602 - TRUE"
#> [1] "603 - TRUE"
#> [1] "604 - TRUE"
#> [1] "605 - TRUE"
#> [1] "606 - database is locked"
#> [1] "607 - TRUE"
#> [1] "608 - TRUE"
#> [1] "609 - TRUE"
#> [1] "610 - TRUE"
#> [1] "611 - TRUE"
#> [1] "612 - TRUE"
#> [1] "613 - TRUE"
#> [1] "614 - TRUE"
#> [1] "615 - TRUE"
#> [1] "616 - TRUE"
#> [1] "617 - TRUE"
#> [1] "618 - TRUE"
#> [1] "619 - TRUE"
#> [1] "620 - TRUE"
#> [1] "621 - TRUE"
#> [1] "622 - TRUE"
#> [1] "623 - TRUE"
#> [1] "624 - TRUE"
#> [1] "625 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "626 - TRUE"
#> [1] "627 - TRUE"
#> [1] "628 - TRUE"
#> [1] "629 - TRUE"
#> [1] "630 - TRUE"
#> [1] "631 - TRUE"
#> [1] "632 - TRUE"
#> [1] "633 - TRUE"
#> [1] "634 - TRUE"
#> [1] "635 - TRUE"
#> [1] "636 - TRUE"
#> [1] "637 - TRUE"
#> [1] "638 - TRUE"
#> [1] "639 - TRUE"
#> [1] "640 - TRUE"
#> [1] "641 - TRUE"
#> [1] "642 - TRUE"
#> [1] "643 - TRUE"
#> [1] "644 - TRUE"
#> [1] "645 - TRUE"
#> [1] "646 - TRUE"
#> [1] "647 - TRUE"
#> [1] "648 - TRUE"
#> [1] "649 - TRUE"
#> [1] "650 - TRUE"
#> [1] "651 - TRUE"
#> [1] "652 - TRUE"
#> [1] "653 - TRUE"
#> [1] "654 - TRUE"
#> [1] "655 - TRUE"
#> [1] "656 - TRUE"
#> [1] "657 - TRUE"
#> [1] "658 - TRUE"
#> [1] "659 - TRUE"
#> [1] "660 - TRUE"
#> [1] "661 - TRUE"
#> [1] "662 - TRUE"
#> [1] "663 - TRUE"
#> [1] "664 - TRUE"
#> [1] "665 - TRUE"
#> [1] "666 - TRUE"
#> [1] "667 - TRUE"
#> [1] "668 - TRUE"
#> [1] "669 - TRUE"
#> [1] "670 - TRUE"
#> [1] "671 - TRUE"
#> [1] "672 - TRUE"
#> [1] "673 - TRUE"
#> [1] "674 - TRUE"
#> [1] "675 - TRUE"
#> [1] "676 - TRUE"
#> [1] "677 - TRUE"
#> [1] "678 - TRUE"
#> [1] "679 - TRUE"
#> [1] "680 - TRUE"
#> [1] "681 - TRUE"
#> [1] "682 - TRUE"
#> [1] "683 - TRUE"
#> [1] "684 - TRUE"
#> [1] "685 - TRUE"
#> [1] "686 - TRUE"
#> [1] "687 - TRUE"
#> [1] "688 - TRUE"
#> [1] "689 - TRUE"
#> [1] "690 - TRUE"
#> [1] "691 - TRUE"
#> [1] "692 - TRUE"
#> [1] "693 - TRUE"
#> [1] "694 - TRUE"
#> [1] "695 - TRUE"
#> [1] "696 - TRUE"
#> [1] "697 - TRUE"
#> [1] "698 - TRUE"
#> [1] "699 - TRUE"
#> [1] "700 - TRUE"
#> [1] "701 - TRUE"
#> [1] "702 - TRUE"
#> [1] "703 - TRUE"
#> [1] "704 - TRUE"
#> [1] "705 - TRUE"
#> [1] "706 - TRUE"
#> [1] "707 - TRUE"
#> [1] "708 - TRUE"
#> [1] "709 - TRUE"
#> [1] "710 - TRUE"
#> [1] "711 - TRUE"
#> [1] "712 - TRUE"
#> [1] "713 - TRUE"
#> [1] "714 - TRUE"
#> [1] "715 - TRUE"
#> [1] "716 - TRUE"
#> [1] "717 - TRUE"
#> [1] "718 - TRUE"
#> [1] "719 - TRUE"
#> [1] "720 - TRUE"
#> [1] "721 - TRUE"
#> [1] "722 - TRUE"
#> [1] "723 - TRUE"
#> [1] "724 - TRUE"
#> [1] "725 - TRUE"
#> [1] "726 - TRUE"
#> [1] "727 - TRUE"
#> [1] "728 - TRUE"
#> [1] "729 - TRUE"
#> [1] "730 - TRUE"
#> [1] "731 - TRUE"
#> [1] "732 - TRUE"
#> [1] "733 - TRUE"
#> [1] "734 - TRUE"
#> [1] "735 - TRUE"
#> [1] "736 - TRUE"
#> [1] "737 - TRUE"
#> [1] "738 - TRUE"
#> [1] "739 - TRUE"
#> [1] "740 - TRUE"
#> [1] "741 - TRUE"
#> [1] "742 - TRUE"
#> [1] "743 - TRUE"
#> [1] "744 - TRUE"
#> [1] "745 - TRUE"
#> [1] "746 - TRUE"
#> [1] "747 - TRUE"
#> [1] "748 - TRUE"
#> [1] "749 - TRUE"
#> [1] "750 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "751 - TRUE"
#> [1] "752 - TRUE"
#> [1] "753 - TRUE"
#> [1] "754 - TRUE"
#> [1] "755 - TRUE"
#> [1] "756 - TRUE"
#> [1] "757 - TRUE"
#> [1] "758 - TRUE"
#> [1] "759 - TRUE"
#> [1] "760 - TRUE"
#> [1] "761 - TRUE"
#> [1] "762 - TRUE"
#> [1] "763 - TRUE"
#> [1] "764 - TRUE"
#> [1] "765 - TRUE"
#> [1] "766 - TRUE"
#> [1] "767 - TRUE"
#> [1] "768 - TRUE"
#> [1] "769 - TRUE"
#> [1] "770 - TRUE"
#> [1] "771 - TRUE"
#> [1] "772 - TRUE"
#> [1] "773 - TRUE"
#> [1] "774 - TRUE"
#> [1] "775 - TRUE"
#> [1] "776 - TRUE"
#> [1] "777 - TRUE"
#> [1] "778 - TRUE"
#> [1] "779 - TRUE"
#> [1] "780 - TRUE"
#> [1] "781 - TRUE"
#> [1] "782 - TRUE"
#> [1] "783 - TRUE"
#> [1] "784 - TRUE"
#> [1] "785 - TRUE"
#> [1] "786 - TRUE"
#> [1] "787 - TRUE"
#> [1] "788 - TRUE"
#> [1] "789 - TRUE"
#> [1] "790 - TRUE"
#> [1] "791 - TRUE"
#> [1] "792 - TRUE"
#> [1] "793 - TRUE"
#> [1] "794 - TRUE"
#> [1] "795 - TRUE"
#> [1] "796 - TRUE"
#> [1] "797 - TRUE"
#> [1] "798 - TRUE"
#> [1] "799 - TRUE"
#> [1] "800 - TRUE"
#> [1] "801 - TRUE"
#> [1] "802 - TRUE"
#> [1] "803 - TRUE"
#> [1] "804 - TRUE"
#> [1] "805 - TRUE"
#> [1] "806 - TRUE"
#> [1] "807 - TRUE"
#> [1] "808 - TRUE"
#> [1] "809 - TRUE"
#> [1] "810 - TRUE"
#> [1] "811 - TRUE"
#> [1] "812 - TRUE"
#> [1] "813 - TRUE"
#> [1] "814 - TRUE"
#> [1] "815 - TRUE"
#> [1] "816 - TRUE"
#> [1] "817 - TRUE"
#> [1] "818 - TRUE"
#> [1] "819 - TRUE"
#> [1] "820 - TRUE"
#> [1] "821 - TRUE"
#> [1] "822 - TRUE"
#> [1] "823 - TRUE"
#> [1] "824 - TRUE"
#> [1] "825 - TRUE"
#> [1] "826 - TRUE"
#> [1] "827 - TRUE"
#> [1] "828 - TRUE"
#> [1] "829 - TRUE"
#> [1] "830 - TRUE"
#> [1] "831 - TRUE"
#> [1] "832 - TRUE"
#> [1] "833 - TRUE"
#> [1] "834 - TRUE"
#> [1] "835 - TRUE"
#> [1] "836 - TRUE"
#> [1] "837 - TRUE"
#> [1] "838 - TRUE"
#> [1] "839 - TRUE"
#> [1] "840 - TRUE"
#> [1] "841 - TRUE"
#> [1] "842 - TRUE"
#> [1] "843 - TRUE"
#> [1] "844 - TRUE"
#> [1] "845 - TRUE"
#> [1] "846 - TRUE"
#> [1] "847 - TRUE"
#> [1] "848 - TRUE"
#> [1] "849 - TRUE"
#> [1] "850 - TRUE"
#> [1] "851 - TRUE"
#> [1] "852 - TRUE"
#> [1] "853 - TRUE"
#> [1] "854 - TRUE"
#> [1] "855 - TRUE"
#> [1] "856 - TRUE"
#> [1] "857 - TRUE"
#> [1] "858 - TRUE"
#> [1] "859 - TRUE"
#> [1] "860 - TRUE"
#> [1] "861 - TRUE"
#> [1] "862 - TRUE"
#> [1] "863 - TRUE"
#> [1] "864 - TRUE"
#> [1] "865 - TRUE"
#> [1] "866 - TRUE"
#> [1] "867 - TRUE"
#> [1] "868 - TRUE"
#> [1] "869 - TRUE"
#> [1] "870 - TRUE"
#> [1] "871 - TRUE"
#> [1] "872 - TRUE"
#> [1] "873 - TRUE"
#> [1] "874 - TRUE"
#> [1] "875 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "876 - TRUE"
#> [1] "877 - TRUE"
#> [1] "878 - TRUE"
#> [1] "879 - database is locked"
#> [1] "880 - TRUE"
#> [1] "881 - TRUE"
#> [1] "882 - TRUE"
#> [1] "883 - TRUE"
#> [1] "884 - TRUE"
#> [1] "885 - TRUE"
#> [1] "886 - TRUE"
#> [1] "887 - TRUE"
#> [1] "888 - TRUE"
#> [1] "889 - TRUE"
#> [1] "890 - TRUE"
#> [1] "891 - TRUE"
#> [1] "892 - TRUE"
#> [1] "893 - TRUE"
#> [1] "894 - TRUE"
#> [1] "895 - TRUE"
#> [1] "896 - TRUE"
#> [1] "897 - TRUE"
#> [1] "898 - TRUE"
#> [1] "899 - TRUE"
#> [1] "900 - TRUE"
#> [1] "901 - TRUE"
#> [1] "902 - TRUE"
#> [1] "903 - TRUE"
#> [1] "904 - TRUE"
#> [1] "905 - TRUE"
#> [1] "906 - TRUE"
#> [1] "907 - TRUE"
#> [1] "908 - TRUE"
#> [1] "909 - TRUE"
#> [1] "910 - database is locked"
#> [1] "911 - TRUE"
#> [1] "912 - TRUE"
#> [1] "913 - TRUE"
#> [1] "914 - TRUE"
#> [1] "915 - TRUE"
#> [1] "916 - TRUE"
#> [1] "917 - TRUE"
#> [1] "918 - TRUE"
#> [1] "919 - TRUE"
#> [1] "920 - TRUE"
#> [1] "921 - TRUE"
#> [1] "922 - TRUE"
#> [1] "923 - TRUE"
#> [1] "924 - TRUE"
#> [1] "925 - TRUE"
#> [1] "926 - TRUE"
#> [1] "927 - TRUE"
#> [1] "928 - TRUE"
#> [1] "929 - TRUE"
#> [1] "930 - TRUE"
#> [1] "931 - TRUE"
#> [1] "932 - TRUE"
#> [1] "933 - TRUE"
#> [1] "934 - TRUE"
#> [1] "935 - TRUE"
#> [1] "936 - TRUE"
#> [1] "937 - TRUE"
#> [1] "938 - TRUE"
#> [1] "939 - TRUE"
#> [1] "940 - TRUE"
#> [1] "941 - TRUE"
#> [1] "942 - TRUE"
#> [1] "943 - TRUE"
#> [1] "944 - TRUE"
#> [1] "945 - TRUE"
#> [1] "946 - TRUE"
#> [1] "947 - TRUE"
#> [1] "948 - TRUE"
#> [1] "949 - TRUE"
#> [1] "950 - TRUE"
#> [1] "951 - TRUE"
#> [1] "952 - TRUE"
#> [1] "953 - TRUE"
#> [1] "954 - TRUE"
#> [1] "955 - TRUE"
#> [1] "956 - TRUE"
#> [1] "957 - TRUE"
#> [1] "958 - TRUE"
#> [1] "959 - TRUE"
#> [1] "960 - TRUE"
#> [1] "961 - TRUE"
#> [1] "962 - TRUE"
#> [1] "963 - TRUE"
#> [1] "964 - TRUE"
#> [1] "965 - TRUE"
#> [1] "966 - TRUE"
#> [1] "967 - TRUE"
#> [1] "968 - TRUE"
#> [1] "969 - TRUE"
#> [1] "970 - TRUE"
#> [1] "971 - TRUE"
#> [1] "972 - TRUE"
#> [1] "973 - TRUE"
#> [1] "974 - TRUE"
#> [1] "975 - TRUE"
#> [1] "976 - TRUE"
#> [1] "977 - TRUE"
#> [1] "978 - TRUE"
#> [1] "979 - TRUE"
#> [1] "980 - TRUE"
#> [1] "981 - TRUE"
#> [1] "982 - TRUE"
#> [1] "983 - TRUE"
#> [1] "984 - TRUE"
#> [1] "985 - TRUE"
#> [1] "986 - TRUE"
#> [1] "987 - TRUE"
#> [1] "988 - TRUE"
#> [1] "989 - TRUE"
#> [1] "990 - TRUE"
#> [1] "991 - TRUE"
#> [1] "992 - TRUE"
#> [1] "993 - TRUE"
#> [1] "994 - TRUE"
#> [1] "995 - TRUE"
#> [1] "996 - TRUE"
#> [1] "997 - TRUE"
#> [1] "998 - TRUE"
#> [1] "999 - TRUE"
#> [1] "1000 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
###############################################################
con <- dbConnect(RSQLite::SQLite(), dbname = file.path("bd_test.db"))
dbGetQuery(con, "SELECT n_loop FROM tb_teste_iris ORDER BY n_loop")
#> n_loop
#> 1 1
#> 2 2
#> 3 3
#> 4 4
#> 5 5
#> 6 6
#> 7 7
#> 8 8
#> 9 9
#> 10 10
#> 11 11
#> 12 12
#> 13 13
#> 14 14
#> 15 15
#> 16 16
#> 17 17
#> 18 18
#> 19 19
#> 20 20
#> 21 21
#> 22 22
#> 23 23
#> 24 24
#> 25 25
#> 26 26
#> 27 27
#> 28 28
#> 29 29
#> 30 30
#> 31 31
#> 32 32
#> 33 33
#> 34 34
#> 35 35
#> 36 36
#> 37 37
#> 38 38
#> 39 39
#> 40 40
#> 41 41
#> 42 42
#> 43 43
#> 44 44
#> 45 45
#> 46 46
#> 47 47
#> 48 48
#> 49 49
#> 50 50
#> 51 51
#> 52 52
#> 53 53
#> 54 54
#> 55 55
#> 56 56
#> 57 57
#> 58 58
#> 59 59
#> 60 60
#> 61 61
#> 62 62
#> 63 63
#> 64 65
#> 65 66
#> 66 67
#> 67 68
#> 68 69
#> 69 70
#> 70 71
#> 71 72
#> 72 73
#> 73 74
#> 74 75
#> 75 76
#> 76 77
#> 77 78
#> 78 79
#> 79 80
#> 80 81
#> 81 82
#> 82 84
#> 83 85
#> 84 86
#> 85 87
#> 86 88
#> 87 89
#> 88 90
#> 89 91
#> 90 92
#> 91 93
#> 92 94
#> 93 95
#> 94 96
#> 95 97
#> 96 98
#> 97 99
#> 98 100
#> 99 101
#> 100 102
#> 101 103
#> 102 104
#> 103 105
#> 104 106
#> 105 107
#> 106 108
#> 107 109
#> 108 110
#> 109 111
#> 110 112
#> 111 113
#> 112 114
#> 113 115
#> 114 116
#> 115 117
#> 116 118
#> 117 119
#> 118 120
#> 119 121
#> 120 122
#> 121 123
#> 122 124
#> 123 125
#> 124 126
#> 125 127
#> 126 128
#> 127 129
#> 128 130
#> 129 131
#> 130 132
#> 131 133
#> 132 134
#> 133 135
#> 134 136
#> 135 137
#> 136 138
#> 137 139
#> 138 140
#> 139 141
#> 140 142
#> 141 143
#> 142 144
#> 143 145
#> 144 146
#> 145 147
#> 146 148
#> 147 149
#> 148 150
#> 149 151
#> 150 152
#> 151 153
#> 152 154
#> 153 155
#> 154 156
#> 155 157
#> 156 158
#> 157 159
#> 158 160
#> 159 161
#> 160 162
#> 161 163
#> 162 164
#> 163 165
#> 164 166
#> 165 167
#> 166 168
#> 167 169
#> 168 170
#> 169 171
#> 170 172
#> 171 173
#> 172 174
#> 173 175
#> 174 176
#> 175 177
#> 176 178
#> 177 179
#> 178 180
#> 179 181
#> 180 182
#> 181 183
#> 182 184
#> 183 185
#> 184 186
#> 185 187
#> 186 188
#> 187 189
#> 188 190
#> 189 191
#> 190 192
#> 191 193
#> 192 194
#> 193 195
#> 194 196
#> 195 197
#> 196 198
#> 197 199
#> 198 200
#> 199 201
#> 200 202
#> 201 203
#> 202 204
#> 203 205
#> 204 206
#> 205 207
#> 206 208
#> 207 209
#> 208 210
#> 209 211
#> 210 212
#> 211 213
#> 212 214
#> 213 215
#> 214 216
#> 215 217
#> 216 218
#> 217 219
#> 218 220
#> 219 221
#> 220 222
#> 221 223
#> 222 224
#> 223 225
#> 224 226
#> 225 227
#> 226 228
#> 227 229
#> 228 230
#> 229 231
#> 230 232
#> 231 233
#> 232 234
#> 233 235
#> 234 236
#> 235 237
#> 236 238
#> 237 239
#> 238 240
#> 239 241
#> 240 242
#> 241 243
#> 242 244
#> 243 245
#> 244 246
#> 245 247
#> 246 248
#> 247 249
#> 248 250
#> 249 251
#> 250 252
#> 251 253
#> 252 254
#> 253 255
#> 254 256
#> 255 257
#> 256 258
#> 257 259
#> 258 260
#> 259 261
#> 260 262
#> 261 263
#> 262 264
#> 263 265
#> 264 266
#> 265 267
#> 266 268
#> 267 269
#> 268 270
#> 269 271
#> 270 272
#> 271 273
#> 272 274
#> 273 275
#> 274 276
#> 275 277
#> 276 278
#> 277 279
#> 278 280
#> 279 281
#> 280 282
#> 281 283
#> 282 284
#> 283 285
#> 284 286
#> 285 287
#> 286 288
#> 287 289
#> 288 290
#> 289 291
#> 290 292
#> 291 293
#> 292 294
#> 293 295
#> 294 296
#> 295 297
#> 296 298
#> 297 299
#> 298 301
#> 299 302
#> 300 303
#> 301 304
#> 302 305
#> 303 306
#> 304 307
#> 305 308
#> 306 309
#> 307 310
#> 308 311
#> 309 312
#> 310 313
#> 311 314
#> 312 315
#> 313 316
#> 314 317
#> 315 318
#> 316 319
#> 317 320
#> 318 321
#> 319 322
#> 320 323
#> 321 324
#> 322 325
#> 323 326
#> 324 327
#> 325 328
#> 326 329
#> 327 330
#> 328 331
#> 329 332
#> 330 333
#> 331 334
#> 332 335
#> 333 336
#> 334 337
#> 335 338
#> 336 339
#> 337 340
#> 338 341
#> 339 342
#> 340 343
#> 341 344
#> 342 345
#> 343 346
#> 344 347
#> 345 348
#> 346 349
#> 347 350
#> 348 351
#> 349 352
#> 350 353
#> 351 354
#> 352 355
#> 353 356
#> 354 357
#> 355 358
#> 356 359
#> 357 360
#> 358 361
#> 359 362
#> 360 363
#> 361 364
#> 362 365
#> 363 366
#> 364 367
#> 365 368
#> 366 369
#> 367 370
#> 368 371
#> 369 372
#> 370 373
#> 371 374
#> 372 375
#> 373 376
#> 374 377
#> 375 378
#> 376 379
#> 377 380
#> 378 381
#> 379 383
#> 380 384
#> 381 385
#> 382 386
#> 383 387
#> 384 388
#> 385 389
#> 386 390
#> 387 391
#> 388 392
#> 389 393
#> 390 394
#> 391 395
#> 392 396
#> 393 397
#> 394 398
#> 395 399
#> 396 400
#> 397 401
#> 398 402
#> 399 403
#> 400 404
#> 401 405
#> 402 406
#> 403 407
#> 404 408
#> 405 409
#> 406 410
#> 407 411
#> 408 412
#> 409 413
#> 410 414
#> 411 415
#> 412 416
#> 413 417
#> 414 418
#> 415 419
#> 416 420
#> 417 421
#> 418 422
#> 419 423
#> 420 424
#> 421 425
#> 422 426
#> 423 427
#> 424 428
#> 425 429
#> 426 430
#> 427 431
#> 428 432
#> 429 433
#> 430 434
#> 431 435
#> 432 436
#> 433 437
#> 434 438
#> 435 439
#> 436 440
#> 437 441
#> 438 442
#> 439 444
#> 440 445
#> 441 446
#> 442 447
#> 443 448
#> 444 449
#> 445 450
#> 446 451
#> 447 452
#> 448 453
#> 449 454
#> 450 455
#> 451 456
#> 452 457
#> 453 458
#> 454 459
#> 455 460
#> 456 461
#> 457 462
#> 458 463
#> 459 464
#> 460 465
#> 461 466
#> 462 467
#> 463 468
#> 464 469
#> 465 470
#> 466 472
#> 467 473
#> 468 474
#> 469 475
#> 470 476
#> 471 477
#> 472 478
#> 473 479
#> 474 480
#> 475 481
#> 476 482
#> 477 483
#> 478 484
#> 479 485
#> 480 486
#> 481 487
#> 482 488
#> 483 489
#> 484 490
#> 485 491
#> 486 492
#> 487 493
#> 488 494
#> 489 495
#> 490 496
#> 491 497
#> 492 498
#> 493 499
#> 494 500
#> 495 501
#> 496 502
#> 497 503
#> 498 504
#> 499 505
#> 500 506
#> 501 507
#> 502 508
#> 503 509
#> 504 510
#> 505 511
#> 506 512
#> 507 513
#> 508 514
#> 509 515
#> 510 516
#> 511 517
#> 512 518
#> 513 519
#> 514 520
#> 515 521
#> 516 522
#> 517 523
#> 518 524
#> 519 525
#> 520 526
#> 521 527
#> 522 528
#> 523 529
#> 524 530
#> 525 531
#> 526 532
#> 527 533
#> 528 534
#> 529 535
#> 530 536
#> 531 537
#> 532 538
#> 533 539
#> 534 540
#> 535 541
#> 536 542
#> 537 543
#> 538 544
#> 539 545
#> 540 546
#> 541 547
#> 542 548
#> 543 549
#> 544 550
#> 545 551
#> 546 552
#> 547 553
#> 548 554
#> 549 555
#> 550 556
#> 551 557
#> 552 558
#> 553 559
#> 554 560
#> 555 561
#> 556 562
#> 557 563
#> 558 564
#> 559 565
#> 560 566
#> 561 567
#> 562 568
#> 563 569
#> 564 570
#> 565 571
#> 566 572
#> 567 573
#> 568 574
#> 569 575
#> 570 576
#> 571 577
#> 572 578
#> 573 579
#> 574 580
#> 575 581
#> 576 583
#> 577 584
#> 578 585
#> 579 586
#> 580 587
#> 581 588
#> 582 589
#> 583 590
#> 584 591
#> 585 592
#> 586 593
#> 587 594
#> 588 595
#> 589 596
#> 590 597
#> 591 598
#> 592 599
#> 593 600
#> 594 601
#> 595 602
#> 596 603
#> 597 604
#> 598 605
#> 599 607
#> 600 608
#> 601 609
#> 602 610
#> 603 611
#> 604 612
#> 605 613
#> 606 614
#> 607 615
#> 608 616
#> 609 617
#> 610 618
#> 611 619
#> 612 620
#> 613 621
#> 614 622
#> 615 623
#> 616 624
#> 617 625
#> 618 626
#> 619 627
#> 620 628
#> 621 629
#> 622 630
#> 623 631
#> 624 632
#> 625 633
#> 626 634
#> 627 635
#> 628 636
#> 629 637
#> 630 638
#> 631 639
#> 632 640
#> 633 641
#> 634 642
#> 635 643
#> 636 644
#> 637 645
#> 638 646
#> 639 647
#> 640 648
#> 641 649
#> 642 650
#> 643 651
#> 644 652
#> 645 653
#> 646 654
#> 647 655
#> 648 656
#> 649 657
#> 650 658
#> 651 659
#> 652 660
#> 653 661
#> 654 662
#> 655 663
#> 656 664
#> 657 665
#> 658 666
#> 659 667
#> 660 668
#> 661 669
#> 662 670
#> 663 671
#> 664 672
#> 665 673
#> 666 674
#> 667 675
#> 668 676
#> 669 677
#> 670 678
#> 671 679
#> 672 680
#> 673 681
#> 674 682
#> 675 683
#> 676 684
#> 677 685
#> 678 686
#> 679 687
#> 680 688
#> 681 689
#> 682 690
#> 683 691
#> 684 692
#> 685 693
#> 686 694
#> 687 695
#> 688 696
#> 689 697
#> 690 698
#> 691 699
#> 692 700
#> 693 701
#> 694 702
#> 695 703
#> 696 704
#> 697 705
#> 698 706
#> 699 707
#> 700 708
#> 701 709
#> 702 710
#> 703 711
#> 704 712
#> 705 713
#> 706 714
#> 707 715
#> 708 716
#> 709 717
#> 710 718
#> 711 719
#> 712 720
#> 713 721
#> 714 722
#> 715 723
#> 716 724
#> 717 725
#> 718 726
#> 719 727
#> 720 728
#> 721 729
#> 722 730
#> 723 731
#> 724 732
#> 725 733
#> 726 734
#> 727 735
#> 728 736
#> 729 737
#> 730 738
#> 731 739
#> 732 740
#> 733 741
#> 734 742
#> 735 743
#> 736 744
#> 737 745
#> 738 746
#> 739 747
#> 740 748
#> 741 749
#> 742 750
#> 743 751
#> 744 752
#> 745 753
#> 746 754
#> 747 755
#> 748 756
#> 749 757
#> 750 758
#> 751 759
#> 752 760
#> 753 761
#> 754 762
#> 755 763
#> 756 764
#> 757 765
#> 758 766
#> 759 767
#> 760 768
#> 761 769
#> 762 770
#> 763 771
#> 764 772
#> 765 773
#> 766 774
#> 767 775
#> 768 776
#> 769 777
#> 770 778
#> 771 779
#> 772 780
#> 773 781
#> 774 782
#> 775 783
#> 776 784
#> 777 785
#> 778 786
#> 779 787
#> 780 788
#> 781 789
#> 782 790
#> 783 791
#> 784 792
#> 785 793
#> 786 794
#> 787 795
#> 788 796
#> 789 797
#> 790 798
#> 791 799
#> 792 800
#> 793 801
#> 794 802
#> 795 803
#> 796 804
#> 797 805
#> 798 806
#> 799 807
#> 800 808
#> 801 809
#> 802 810
#> 803 811
#> 804 812
#> 805 813
#> 806 814
#> 807 815
#> 808 816
#> 809 817
#> 810 818
#> 811 819
#> 812 820
#> 813 821
#> 814 822
#> 815 823
#> 816 824
#> 817 825
#> 818 826
#> 819 827
#> 820 828
#> 821 829
#> 822 830
#> 823 831
#> 824 832
#> 825 833
#> 826 834
#> 827 835
#> 828 836
#> 829 837
#> 830 838
#> 831 839
#> 832 840
#> 833 841
#> 834 842
#> 835 843
#> 836 844
#> 837 845
#> 838 846
#> 839 847
#> 840 848
#> 841 849
#> 842 850
#> 843 851
#> 844 852
#> 845 853
#> 846 854
#> 847 855
#> 848 856
#> 849 857
#> 850 858
#> 851 859
#> 852 860
#> 853 861
#> 854 862
#> 855 863
#> 856 864
#> 857 865
#> 858 866
#> 859 867
#> 860 868
#> 861 869
#> 862 870
#> 863 871
#> 864 872
#> 865 873
#> 866 874
#> 867 875
#> 868 876
#> 869 877
#> 870 878
#> 871 880
#> 872 881
#> 873 882
#> 874 883
#> 875 884
#> 876 885
#> 877 886
#> 878 887
#> 879 888
#> 880 889
#> 881 890
#> 882 891
#> 883 892
#> 884 893
#> 885 894
#> 886 895
#> 887 896
#> 888 897
#> 889 898
#> 890 899
#> 891 900
#> 892 901
#> 893 902
#> 894 903
#> 895 904
#> 896 905
#> 897 906
#> 898 907
#> 899 908
#> 900 909
#> 901 911
#> 902 912
#> 903 913
#> 904 914
#> 905 915
#> 906 916
#> 907 917
#> 908 918
#> 909 919
#> 910 920
#> 911 921
#> 912 922
#> 913 923
#> 914 924
#> 915 925
#> 916 926
#> 917 927
#> 918 928
#> 919 929
#> 920 930
#> 921 931
#> 922 932
#> 923 933
#> 924 934
#> 925 935
#> 926 936
#> 927 937
#> 928 938
#> 929 939
#> 930 940
#> 931 941
#> 932 942
#> 933 943
#> 934 944
#> 935 945
#> 936 946
#> 937 947
#> 938 948
#> 939 949
#> 940 950
#> 941 951
#> 942 952
#> 943 953
#> 944 954
#> 945 955
#> 946 956
#> 947 957
#> 948 958
#> 949 959
#> 950 960
#> 951 961
#> 952 962
#> 953 963
#> 954 964
#> 955 965
#> 956 966
#> 957 967
#> 958 968
#> 959 969
#> 960 970
#> 961 971
#> 962 972
#> 963 973
#> 964 974
#> 965 975
#> 966 976
#> 967 977
#> 968 978
#> 969 979
#> 970 980
#> 971 981
#> 972 982
#> 973 983
#> 974 984
#> 975 985
#> 976 986
#> 977 987
#> 978 988
#> 979 989
#> 980 990
#> 981 991
#> 982 992
#> 983 993
#> 984 994
#> 985 995
#> 986 996
#> 987 997
#> 988 998
#> 989 999
#> 990 1000
Created on 2021-01-10 by the reprex package (v0.3.0)
My reprex also had problems. The console reports that the 30 loops were successfully executed, so there should be 4500 lines. But the database only has 4050.
BD SQLite: bd_teste.zip
library(DBI)
library(RSQLite)
library(furrr)
#> Warning: package 'furrr' was built under R version 4.0.3
#> Carregando pacotes exigidos: future
library(future)
library(magrittr)
#> Warning: package 'magrittr' was built under R version 4.0.3
library(purrr)
#>
#> Attaching package: 'purrr'
#> The following object is masked from 'package:magrittr':
#>
#> set_names
n_teste <- 1:30
unlink("bd_test.db")
connect_sgbd <- function() {
conexao <- DBI::dbConnect(RSQLite::SQLite(),
dbname = file.path("bd_teste.db"))
return(conexao)
}
teste_write_sqlite <- function(n_teste) {
tb_teste_iris <- iris %>%
dplyr::mutate(n_loop = n_teste)
tentativas <- purrr::rate_delay(pause = 2,
max_times = 20)
insist_write_sqlite <- purrr::insistently(DBI::dbWriteTable,
tentativas,
quiet = FALSE)
safely_write_sqlite <- purrr::safely(insist_write_sqlite)
conn <- connect_sgbd()
safely_write_sqlite_teste <- safely_write_sqlite(conn,
"tb_teste_iris",
tb_teste_iris,
append = TRUE)
if(is.null(safely_write_sqlite_teste$error) == FALSE){
DBI::dbDisconnect(conn)
return(
print(paste(n_teste, "-", "Failed to write"))
)
}
DBI::dbDisconnect(conn)
print(paste(n_teste, "-", safely_write_sqlite_teste$result))
}
future::plan("multisession",
workers = 5)
furrr::future_walk(n_teste, teste_write_sqlite, .progress = TRUE)
#> [1] "1 - TRUE"
#> [1] "2 - TRUE"
#> [1] "3 - TRUE"
#> [1] "4 - TRUE"
#> [1] "5 - TRUE"
#> [1] "6 - TRUE"
#> Warning: UNRELIABLE VALUE: Future ('<none>') unexpectedly generated random
#> numbers without specifying argument 'seed'. There is a risk that those random
#> numbers are not statistically sound and the overall results might be invalid.
#> To fix this, specify 'seed=TRUE'. This ensures that proper, parallel-safe random
#> numbers are produced via the L'Ecuyer-CMRG method. To disable this check, use
#> 'seed=NULL', or set option 'future.rng.onMisuse' to "ignore".
#> [1] "7 - TRUE"
#> [1] "8 - TRUE"
#> [1] "9 - TRUE"
#> [1] "10 - TRUE"
#> [1] "11 - TRUE"
#> [1] "12 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Warning: Closing open result set, pending rows
#> Error: database is locked
#> Retrying in 2 seconds.
#> Warning: UNRELIABLE VALUE: Future ('<none>') unexpectedly generated random
#> numbers without specifying argument 'seed'. There is a risk that those random
#> numbers are not statistically sound and the overall results might be invalid.
#> To fix this, specify 'seed=TRUE'. This ensures that proper, parallel-safe random
#> numbers are produced via the L'Ecuyer-CMRG method. To disable this check, use
#> 'seed=NULL', or set option 'future.rng.onMisuse' to "ignore".
#> [1] "13 - TRUE"
#> [1] "14 - TRUE"
#> [1] "15 - TRUE"
#> [1] "16 - TRUE"
#> [1] "17 - TRUE"
#> [1] "18 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Warning: UNRELIABLE VALUE: Future ('<none>') unexpectedly generated random
#> numbers without specifying argument 'seed'. There is a risk that those random
#> numbers are not statistically sound and the overall results might be invalid.
#> To fix this, specify 'seed=TRUE'. This ensures that proper, parallel-safe random
#> numbers are produced via the L'Ecuyer-CMRG method. To disable this check, use
#> 'seed=NULL', or set option 'future.rng.onMisuse' to "ignore".
#> [1] "19 - TRUE"
#> [1] "20 - TRUE"
#> [1] "21 - TRUE"
#> [1] "22 - TRUE"
#> [1] "23 - TRUE"
#> [1] "24 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Warning: UNRELIABLE VALUE: Future ('<none>') unexpectedly generated random
#> numbers without specifying argument 'seed'. There is a risk that those random
#> numbers are not statistically sound and the overall results might be invalid.
#> To fix this, specify 'seed=TRUE'. This ensures that proper, parallel-safe random
#> numbers are produced via the L'Ecuyer-CMRG method. To disable this check, use
#> 'seed=NULL', or set option 'future.rng.onMisuse' to "ignore".
#> [1] "25 - TRUE"
#> [1] "26 - TRUE"
#> [1] "27 - TRUE"
#> [1] "28 - TRUE"
#> [1] "29 - TRUE"
#> [1] "30 - TRUE"
#> Warning: Couldn't set synchronous mode: database is locked
#> Use `synchronous` = NULL to turn off this warning.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Warning: UNRELIABLE VALUE: Future ('<none>') unexpectedly generated random
#> numbers without specifying argument 'seed'. There is a risk that those random
#> numbers are not statistically sound and the overall results might be invalid.
#> To fix this, specify 'seed=TRUE'. This ensures that proper, parallel-safe random
#> numbers are produced via the L'Ecuyer-CMRG method. To disable this check, use
#> 'seed=NULL', or set option 'future.rng.onMisuse' to "ignore".
Created on 2021-01-11 by the reprex package (v0.3.0)
Thanks. I think it's okay for the first reprex to create fewer records than expected -- the dbWriteTable()
still can fail. What happens if you also run dbWriteTable()
with purrr::insistently()
?
Was this the example?
Reprex: 994 lines were recorded
library(DBI)
library(RSQLite)
library(furrr)
#> Warning: package 'furrr' was built under R version 4.0.3
#> Carregando pacotes exigidos: future
#> Loading required package: future
library(future)
library(magrittr)
#> Warning: package 'magrittr' was built under R version 4.0.3
library(purrr)
#>
#> Attaching package: 'purrr'
#> The following object is masked from 'package:magrittr':
#>
#> set_names
#>
#> Attaching package: 'purrr'
#> The following object is masked from 'package:magrittr':
#>
#> set_names
n_teste <- 1:1000
unlink("bd_test.db")
connect_sgbd <- function() {
conexao <- DBI::dbConnect(RSQLite::SQLite(),
dbname = file.path("bd_test.db")
)
return(conexao)
}
teste_write_sqlite <- function(n_teste) {
tb_teste_iris <- iris[1, ] %>%
dplyr::mutate(n_loop = n_teste)
tentativas <- purrr::rate_delay(pause = 2,
max_times = 20
)
insist_execute_sqlite <- purrr::insistently(DBI::dbExecute,
tentativas,
quiet = FALSE
)
insist_dbWriteTable <- purrr::insistently(DBI::dbWriteTable,
tentativas,
quiet = FALSE
)
conn <- connect_sgbd()
on.exit(dbDisconnect(conn))
tryCatch(
{
insist_execute_sqlite(conn, "BEGIN IMMEDIATE TRANSACTION")
# Rollback on failure
on.exit(try(dbExecute(conn, "ROLLBACK TRANSACTION")))
out <- insist_dbWriteTable(conn, "tb_teste_iris", tb_teste_iris, append = TRUE)
dbExecute(conn, "COMMIT TRANSACTION")
# Don't rollback on success
on.exit(NULL)
print(paste(n_teste, "-", out))
},
error = function(e) {
print(paste(n_teste, "-", conditionMessage(e)))
}
)
}
future::plan("multisession",
workers = 8
)
options(future.rng.onMisuse = "ignore")
furrr::future_walk(n_teste, teste_write_sqlite, .progress = TRUE)
#> [1] "1 - TRUE"
#> [1] "2 - TRUE"
#> [1] "3 - TRUE"
#> [1] "4 - TRUE"
#> [1] "5 - TRUE"
#> [1] "6 - TRUE"
#> [1] "7 - TRUE"
#> [1] "8 - TRUE"
#> [1] "9 - TRUE"
#> [1] "10 - TRUE"
#> [1] "11 - TRUE"
#> [1] "12 - TRUE"
#> [1] "13 - TRUE"
#> [1] "14 - TRUE"
#> [1] "15 - TRUE"
#> [1] "16 - TRUE"
#> [1] "17 - TRUE"
#> [1] "18 - TRUE"
#> [1] "19 - TRUE"
#> [1] "20 - TRUE"
#> [1] "21 - TRUE"
#> [1] "22 - TRUE"
#> [1] "23 - TRUE"
#> [1] "24 - TRUE"
#> [1] "25 - TRUE"
#> [1] "26 - TRUE"
#> [1] "27 - TRUE"
#> [1] "28 - TRUE"
#> [1] "29 - TRUE"
#> [1] "30 - TRUE"
#> [1] "31 - TRUE"
#> [1] "32 - TRUE"
#> [1] "33 - TRUE"
#> [1] "34 - TRUE"
#> [1] "35 - TRUE"
#> [1] "36 - TRUE"
#> [1] "37 - TRUE"
#> [1] "38 - TRUE"
#> [1] "39 - TRUE"
#> [1] "40 - TRUE"
#> [1] "41 - TRUE"
#> [1] "42 - TRUE"
#> [1] "43 - TRUE"
#> [1] "44 - TRUE"
#> [1] "45 - database is locked"
#> [1] "46 - TRUE"
#> [1] "47 - TRUE"
#> [1] "48 - TRUE"
#> [1] "49 - TRUE"
#> [1] "50 - TRUE"
#> [1] "51 - TRUE"
#> [1] "52 - TRUE"
#> [1] "53 - TRUE"
#> [1] "54 - TRUE"
#> [1] "55 - TRUE"
#> [1] "56 - TRUE"
#> [1] "57 - TRUE"
#> [1] "58 - TRUE"
#> [1] "59 - TRUE"
#> [1] "60 - TRUE"
#> [1] "61 - TRUE"
#> [1] "62 - TRUE"
#> [1] "63 - TRUE"
#> [1] "64 - TRUE"
#> [1] "65 - TRUE"
#> [1] "66 - TRUE"
#> [1] "67 - TRUE"
#> [1] "68 - TRUE"
#> [1] "69 - TRUE"
#> [1] "70 - TRUE"
#> [1] "71 - TRUE"
#> [1] "72 - TRUE"
#> [1] "73 - TRUE"
#> [1] "74 - TRUE"
#> [1] "75 - TRUE"
#> [1] "76 - TRUE"
#> [1] "77 - TRUE"
#> [1] "78 - TRUE"
#> [1] "79 - TRUE"
#> [1] "80 - TRUE"
#> [1] "81 - TRUE"
#> [1] "82 - TRUE"
#> [1] "83 - TRUE"
#> [1] "84 - TRUE"
#> [1] "85 - TRUE"
#> [1] "86 - TRUE"
#> [1] "87 - TRUE"
#> [1] "88 - TRUE"
#> [1] "89 - TRUE"
#> [1] "90 - TRUE"
#> [1] "91 - TRUE"
#> [1] "92 - TRUE"
#> [1] "93 - TRUE"
#> [1] "94 - TRUE"
#> [1] "95 - TRUE"
#> [1] "96 - TRUE"
#> [1] "97 - TRUE"
#> [1] "98 - TRUE"
#> [1] "99 - TRUE"
#> [1] "100 - TRUE"
#> [1] "101 - TRUE"
#> [1] "102 - TRUE"
#> [1] "103 - TRUE"
#> [1] "104 - TRUE"
#> [1] "105 - TRUE"
#> [1] "106 - TRUE"
#> [1] "107 - TRUE"
#> [1] "108 - TRUE"
#> [1] "109 - TRUE"
#> [1] "110 - TRUE"
#> [1] "111 - TRUE"
#> [1] "112 - TRUE"
#> [1] "113 - TRUE"
#> [1] "114 - TRUE"
#> [1] "115 - TRUE"
#> [1] "116 - TRUE"
#> [1] "117 - TRUE"
#> [1] "118 - TRUE"
#> [1] "119 - TRUE"
#> [1] "120 - TRUE"
#> [1] "121 - TRUE"
#> [1] "122 - TRUE"
#> [1] "123 - TRUE"
#> [1] "124 - TRUE"
#> [1] "125 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "126 - TRUE"
#> [1] "127 - TRUE"
#> [1] "128 - TRUE"
#> [1] "129 - TRUE"
#> [1] "130 - TRUE"
#> [1] "131 - TRUE"
#> [1] "132 - TRUE"
#> [1] "133 - TRUE"
#> [1] "134 - TRUE"
#> [1] "135 - TRUE"
#> [1] "136 - TRUE"
#> [1] "137 - TRUE"
#> [1] "138 - TRUE"
#> [1] "139 - TRUE"
#> [1] "140 - TRUE"
#> [1] "141 - TRUE"
#> [1] "142 - TRUE"
#> [1] "143 - TRUE"
#> [1] "144 - TRUE"
#> [1] "145 - TRUE"
#> [1] "146 - database is locked"
#> [1] "147 - TRUE"
#> [1] "148 - TRUE"
#> [1] "149 - TRUE"
#> [1] "150 - TRUE"
#> [1] "151 - TRUE"
#> [1] "152 - TRUE"
#> [1] "153 - TRUE"
#> [1] "154 - TRUE"
#> [1] "155 - TRUE"
#> [1] "156 - TRUE"
#> [1] "157 - TRUE"
#> [1] "158 - TRUE"
#> [1] "159 - TRUE"
#> [1] "160 - TRUE"
#> [1] "161 - TRUE"
#> [1] "162 - TRUE"
#> [1] "163 - TRUE"
#> [1] "164 - database is locked"
#> [1] "165 - TRUE"
#> [1] "166 - TRUE"
#> [1] "167 - TRUE"
#> [1] "168 - TRUE"
#> [1] "169 - TRUE"
#> [1] "170 - TRUE"
#> [1] "171 - TRUE"
#> [1] "172 - TRUE"
#> [1] "173 - TRUE"
#> [1] "174 - TRUE"
#> [1] "175 - TRUE"
#> [1] "176 - TRUE"
#> [1] "177 - TRUE"
#> [1] "178 - TRUE"
#> [1] "179 - TRUE"
#> [1] "180 - TRUE"
#> [1] "181 - TRUE"
#> [1] "182 - TRUE"
#> [1] "183 - TRUE"
#> [1] "184 - TRUE"
#> [1] "185 - TRUE"
#> [1] "186 - TRUE"
#> [1] "187 - TRUE"
#> [1] "188 - TRUE"
#> [1] "189 - TRUE"
#> [1] "190 - TRUE"
#> [1] "191 - TRUE"
#> [1] "192 - TRUE"
#> [1] "193 - TRUE"
#> [1] "194 - TRUE"
#> [1] "195 - TRUE"
#> [1] "196 - TRUE"
#> [1] "197 - TRUE"
#> [1] "198 - TRUE"
#> [1] "199 - TRUE"
#> [1] "200 - TRUE"
#> [1] "201 - TRUE"
#> [1] "202 - TRUE"
#> [1] "203 - TRUE"
#> [1] "204 - TRUE"
#> [1] "205 - TRUE"
#> [1] "206 - TRUE"
#> [1] "207 - TRUE"
#> [1] "208 - TRUE"
#> [1] "209 - TRUE"
#> [1] "210 - TRUE"
#> [1] "211 - TRUE"
#> [1] "212 - TRUE"
#> [1] "213 - TRUE"
#> [1] "214 - TRUE"
#> [1] "215 - TRUE"
#> [1] "216 - TRUE"
#> [1] "217 - TRUE"
#> [1] "218 - TRUE"
#> [1] "219 - TRUE"
#> [1] "220 - TRUE"
#> [1] "221 - TRUE"
#> [1] "222 - TRUE"
#> [1] "223 - TRUE"
#> [1] "224 - TRUE"
#> [1] "225 - TRUE"
#> [1] "226 - TRUE"
#> [1] "227 - TRUE"
#> [1] "228 - TRUE"
#> [1] "229 - TRUE"
#> [1] "230 - TRUE"
#> [1] "231 - TRUE"
#> [1] "232 - TRUE"
#> [1] "233 - TRUE"
#> [1] "234 - TRUE"
#> [1] "235 - TRUE"
#> [1] "236 - TRUE"
#> [1] "237 - TRUE"
#> [1] "238 - database is locked"
#> [1] "239 - TRUE"
#> [1] "240 - TRUE"
#> [1] "241 - TRUE"
#> [1] "242 - TRUE"
#> [1] "243 - TRUE"
#> [1] "244 - TRUE"
#> [1] "245 - TRUE"
#> [1] "246 - TRUE"
#> [1] "247 - TRUE"
#> [1] "248 - TRUE"
#> [1] "249 - TRUE"
#> [1] "250 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "251 - TRUE"
#> [1] "252 - TRUE"
#> [1] "253 - TRUE"
#> [1] "254 - TRUE"
#> [1] "255 - TRUE"
#> [1] "256 - TRUE"
#> [1] "257 - TRUE"
#> [1] "258 - TRUE"
#> [1] "259 - TRUE"
#> [1] "260 - TRUE"
#> [1] "261 - TRUE"
#> [1] "262 - TRUE"
#> [1] "263 - TRUE"
#> [1] "264 - TRUE"
#> [1] "265 - TRUE"
#> [1] "266 - TRUE"
#> [1] "267 - TRUE"
#> [1] "268 - TRUE"
#> [1] "269 - TRUE"
#> [1] "270 - TRUE"
#> [1] "271 - TRUE"
#> [1] "272 - TRUE"
#> [1] "273 - TRUE"
#> [1] "274 - TRUE"
#> [1] "275 - TRUE"
#> [1] "276 - TRUE"
#> [1] "277 - TRUE"
#> [1] "278 - TRUE"
#> [1] "279 - TRUE"
#> [1] "280 - TRUE"
#> [1] "281 - TRUE"
#> [1] "282 - TRUE"
#> [1] "283 - TRUE"
#> [1] "284 - TRUE"
#> [1] "285 - TRUE"
#> [1] "286 - TRUE"
#> [1] "287 - TRUE"
#> [1] "288 - TRUE"
#> [1] "289 - TRUE"
#> [1] "290 - TRUE"
#> [1] "291 - TRUE"
#> [1] "292 - TRUE"
#> [1] "293 - TRUE"
#> [1] "294 - TRUE"
#> [1] "295 - TRUE"
#> [1] "296 - TRUE"
#> [1] "297 - TRUE"
#> [1] "298 - TRUE"
#> [1] "299 - TRUE"
#> [1] "300 - TRUE"
#> [1] "301 - TRUE"
#> [1] "302 - TRUE"
#> [1] "303 - TRUE"
#> [1] "304 - TRUE"
#> [1] "305 - TRUE"
#> [1] "306 - TRUE"
#> [1] "307 - TRUE"
#> [1] "308 - TRUE"
#> [1] "309 - TRUE"
#> [1] "310 - TRUE"
#> [1] "311 - TRUE"
#> [1] "312 - TRUE"
#> [1] "313 - TRUE"
#> [1] "314 - TRUE"
#> [1] "315 - TRUE"
#> [1] "316 - TRUE"
#> [1] "317 - TRUE"
#> [1] "318 - TRUE"
#> [1] "319 - TRUE"
#> [1] "320 - TRUE"
#> [1] "321 - TRUE"
#> [1] "322 - TRUE"
#> [1] "323 - TRUE"
#> [1] "324 - TRUE"
#> [1] "325 - TRUE"
#> [1] "326 - TRUE"
#> [1] "327 - TRUE"
#> [1] "328 - TRUE"
#> [1] "329 - TRUE"
#> [1] "330 - TRUE"
#> [1] "331 - TRUE"
#> [1] "332 - TRUE"
#> [1] "333 - TRUE"
#> [1] "334 - TRUE"
#> [1] "335 - TRUE"
#> [1] "336 - TRUE"
#> [1] "337 - TRUE"
#> [1] "338 - TRUE"
#> [1] "339 - TRUE"
#> [1] "340 - TRUE"
#> [1] "341 - TRUE"
#> [1] "342 - TRUE"
#> [1] "343 - TRUE"
#> [1] "344 - TRUE"
#> [1] "345 - TRUE"
#> [1] "346 - TRUE"
#> [1] "347 - TRUE"
#> [1] "348 - TRUE"
#> [1] "349 - TRUE"
#> [1] "350 - TRUE"
#> [1] "351 - TRUE"
#> [1] "352 - TRUE"
#> [1] "353 - TRUE"
#> [1] "354 - TRUE"
#> [1] "355 - TRUE"
#> [1] "356 - TRUE"
#> [1] "357 - TRUE"
#> [1] "358 - TRUE"
#> [1] "359 - TRUE"
#> [1] "360 - TRUE"
#> [1] "361 - TRUE"
#> [1] "362 - TRUE"
#> [1] "363 - TRUE"
#> [1] "364 - TRUE"
#> [1] "365 - TRUE"
#> [1] "366 - TRUE"
#> [1] "367 - TRUE"
#> [1] "368 - TRUE"
#> [1] "369 - TRUE"
#> [1] "370 - TRUE"
#> [1] "371 - TRUE"
#> [1] "372 - TRUE"
#> [1] "373 - TRUE"
#> [1] "374 - TRUE"
#> [1] "375 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "376 - TRUE"
#> [1] "377 - TRUE"
#> [1] "378 - TRUE"
#> [1] "379 - TRUE"
#> [1] "380 - TRUE"
#> [1] "381 - TRUE"
#> [1] "382 - TRUE"
#> [1] "383 - TRUE"
#> [1] "384 - TRUE"
#> [1] "385 - TRUE"
#> [1] "386 - TRUE"
#> [1] "387 - TRUE"
#> [1] "388 - TRUE"
#> [1] "389 - TRUE"
#> [1] "390 - TRUE"
#> [1] "391 - TRUE"
#> [1] "392 - TRUE"
#> [1] "393 - TRUE"
#> [1] "394 - TRUE"
#> [1] "395 - TRUE"
#> [1] "396 - TRUE"
#> [1] "397 - TRUE"
#> [1] "398 - TRUE"
#> [1] "399 - TRUE"
#> [1] "400 - TRUE"
#> [1] "401 - TRUE"
#> [1] "402 - TRUE"
#> [1] "403 - TRUE"
#> [1] "404 - TRUE"
#> [1] "405 - TRUE"
#> [1] "406 - TRUE"
#> [1] "407 - TRUE"
#> [1] "408 - TRUE"
#> [1] "409 - TRUE"
#> [1] "410 - TRUE"
#> [1] "411 - TRUE"
#> [1] "412 - TRUE"
#> [1] "413 - TRUE"
#> [1] "414 - TRUE"
#> [1] "415 - TRUE"
#> [1] "416 - TRUE"
#> [1] "417 - TRUE"
#> [1] "418 - TRUE"
#> [1] "419 - TRUE"
#> [1] "420 - TRUE"
#> [1] "421 - TRUE"
#> [1] "422 - TRUE"
#> [1] "423 - TRUE"
#> [1] "424 - TRUE"
#> [1] "425 - TRUE"
#> [1] "426 - TRUE"
#> [1] "427 - TRUE"
#> [1] "428 - TRUE"
#> [1] "429 - TRUE"
#> [1] "430 - TRUE"
#> [1] "431 - TRUE"
#> [1] "432 - TRUE"
#> [1] "433 - TRUE"
#> [1] "434 - TRUE"
#> [1] "435 - TRUE"
#> [1] "436 - TRUE"
#> [1] "437 - TRUE"
#> [1] "438 - TRUE"
#> [1] "439 - TRUE"
#> [1] "440 - TRUE"
#> [1] "441 - TRUE"
#> [1] "442 - TRUE"
#> [1] "443 - TRUE"
#> [1] "444 - TRUE"
#> [1] "445 - TRUE"
#> [1] "446 - TRUE"
#> [1] "447 - TRUE"
#> [1] "448 - TRUE"
#> [1] "449 - TRUE"
#> [1] "450 - TRUE"
#> [1] "451 - TRUE"
#> [1] "452 - TRUE"
#> [1] "453 - TRUE"
#> [1] "454 - TRUE"
#> [1] "455 - TRUE"
#> [1] "456 - TRUE"
#> [1] "457 - TRUE"
#> [1] "458 - TRUE"
#> [1] "459 - TRUE"
#> [1] "460 - TRUE"
#> [1] "461 - TRUE"
#> [1] "462 - TRUE"
#> [1] "463 - TRUE"
#> [1] "464 - TRUE"
#> [1] "465 - TRUE"
#> [1] "466 - TRUE"
#> [1] "467 - TRUE"
#> [1] "468 - TRUE"
#> [1] "469 - TRUE"
#> [1] "470 - TRUE"
#> [1] "471 - TRUE"
#> [1] "472 - TRUE"
#> [1] "473 - TRUE"
#> [1] "474 - TRUE"
#> [1] "475 - TRUE"
#> [1] "476 - TRUE"
#> [1] "477 - TRUE"
#> [1] "478 - TRUE"
#> [1] "479 - TRUE"
#> [1] "480 - TRUE"
#> [1] "481 - TRUE"
#> [1] "482 - TRUE"
#> [1] "483 - TRUE"
#> [1] "484 - TRUE"
#> [1] "485 - TRUE"
#> [1] "486 - TRUE"
#> [1] "487 - TRUE"
#> [1] "488 - TRUE"
#> [1] "489 - TRUE"
#> [1] "490 - TRUE"
#> [1] "491 - TRUE"
#> [1] "492 - TRUE"
#> [1] "493 - TRUE"
#> [1] "494 - TRUE"
#> [1] "495 - TRUE"
#> [1] "496 - TRUE"
#> [1] "497 - TRUE"
#> [1] "498 - TRUE"
#> [1] "499 - TRUE"
#> [1] "500 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "501 - TRUE"
#> [1] "502 - TRUE"
#> [1] "503 - TRUE"
#> [1] "504 - TRUE"
#> [1] "505 - TRUE"
#> [1] "506 - TRUE"
#> [1] "507 - TRUE"
#> [1] "508 - TRUE"
#> [1] "509 - TRUE"
#> [1] "510 - TRUE"
#> [1] "511 - TRUE"
#> [1] "512 - TRUE"
#> [1] "513 - TRUE"
#> [1] "514 - TRUE"
#> [1] "515 - TRUE"
#> [1] "516 - TRUE"
#> [1] "517 - TRUE"
#> [1] "518 - TRUE"
#> [1] "519 - TRUE"
#> [1] "520 - TRUE"
#> [1] "521 - TRUE"
#> [1] "522 - TRUE"
#> [1] "523 - TRUE"
#> [1] "524 - TRUE"
#> [1] "525 - TRUE"
#> [1] "526 - TRUE"
#> [1] "527 - TRUE"
#> [1] "528 - TRUE"
#> [1] "529 - TRUE"
#> [1] "530 - TRUE"
#> [1] "531 - TRUE"
#> [1] "532 - TRUE"
#> [1] "533 - TRUE"
#> [1] "534 - TRUE"
#> [1] "535 - TRUE"
#> [1] "536 - TRUE"
#> [1] "537 - TRUE"
#> [1] "538 - TRUE"
#> [1] "539 - TRUE"
#> [1] "540 - TRUE"
#> [1] "541 - TRUE"
#> [1] "542 - TRUE"
#> [1] "543 - TRUE"
#> [1] "544 - TRUE"
#> [1] "545 - TRUE"
#> [1] "546 - TRUE"
#> [1] "547 - TRUE"
#> [1] "548 - TRUE"
#> [1] "549 - TRUE"
#> [1] "550 - TRUE"
#> [1] "551 - TRUE"
#> [1] "552 - TRUE"
#> [1] "553 - TRUE"
#> [1] "554 - TRUE"
#> [1] "555 - TRUE"
#> [1] "556 - TRUE"
#> [1] "557 - TRUE"
#> [1] "558 - TRUE"
#> [1] "559 - TRUE"
#> [1] "560 - TRUE"
#> [1] "561 - TRUE"
#> [1] "562 - TRUE"
#> [1] "563 - TRUE"
#> [1] "564 - TRUE"
#> [1] "565 - TRUE"
#> [1] "566 - TRUE"
#> [1] "567 - TRUE"
#> [1] "568 - TRUE"
#> [1] "569 - TRUE"
#> [1] "570 - TRUE"
#> [1] "571 - TRUE"
#> [1] "572 - TRUE"
#> [1] "573 - TRUE"
#> [1] "574 - TRUE"
#> [1] "575 - TRUE"
#> [1] "576 - TRUE"
#> [1] "577 - TRUE"
#> [1] "578 - TRUE"
#> [1] "579 - TRUE"
#> [1] "580 - TRUE"
#> [1] "581 - TRUE"
#> [1] "582 - TRUE"
#> [1] "583 - TRUE"
#> [1] "584 - TRUE"
#> [1] "585 - TRUE"
#> [1] "586 - TRUE"
#> [1] "587 - TRUE"
#> [1] "588 - TRUE"
#> [1] "589 - TRUE"
#> [1] "590 - TRUE"
#> [1] "591 - TRUE"
#> [1] "592 - TRUE"
#> [1] "593 - TRUE"
#> [1] "594 - TRUE"
#> [1] "595 - TRUE"
#> [1] "596 - TRUE"
#> [1] "597 - TRUE"
#> [1] "598 - TRUE"
#> [1] "599 - TRUE"
#> [1] "600 - TRUE"
#> [1] "601 - TRUE"
#> [1] "602 - TRUE"
#> [1] "603 - TRUE"
#> [1] "604 - TRUE"
#> [1] "605 - TRUE"
#> [1] "606 - TRUE"
#> [1] "607 - TRUE"
#> [1] "608 - TRUE"
#> [1] "609 - TRUE"
#> [1] "610 - TRUE"
#> [1] "611 - TRUE"
#> [1] "612 - TRUE"
#> [1] "613 - TRUE"
#> [1] "614 - TRUE"
#> [1] "615 - TRUE"
#> [1] "616 - TRUE"
#> [1] "617 - TRUE"
#> [1] "618 - TRUE"
#> [1] "619 - TRUE"
#> [1] "620 - TRUE"
#> [1] "621 - TRUE"
#> [1] "622 - TRUE"
#> [1] "623 - TRUE"
#> [1] "624 - TRUE"
#> [1] "625 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "626 - TRUE"
#> [1] "627 - TRUE"
#> [1] "628 - TRUE"
#> [1] "629 - TRUE"
#> [1] "630 - TRUE"
#> [1] "631 - TRUE"
#> [1] "632 - TRUE"
#> [1] "633 - TRUE"
#> [1] "634 - TRUE"
#> [1] "635 - TRUE"
#> [1] "636 - TRUE"
#> [1] "637 - TRUE"
#> [1] "638 - TRUE"
#> [1] "639 - TRUE"
#> [1] "640 - database is locked"
#> [1] "641 - TRUE"
#> [1] "642 - TRUE"
#> [1] "643 - TRUE"
#> [1] "644 - TRUE"
#> [1] "645 - TRUE"
#> [1] "646 - TRUE"
#> [1] "647 - TRUE"
#> [1] "648 - TRUE"
#> [1] "649 - TRUE"
#> [1] "650 - TRUE"
#> [1] "651 - TRUE"
#> [1] "652 - TRUE"
#> [1] "653 - TRUE"
#> [1] "654 - TRUE"
#> [1] "655 - TRUE"
#> [1] "656 - TRUE"
#> [1] "657 - TRUE"
#> [1] "658 - TRUE"
#> [1] "659 - TRUE"
#> [1] "660 - TRUE"
#> [1] "661 - TRUE"
#> [1] "662 - TRUE"
#> [1] "663 - TRUE"
#> [1] "664 - TRUE"
#> [1] "665 - TRUE"
#> [1] "666 - TRUE"
#> [1] "667 - TRUE"
#> [1] "668 - TRUE"
#> [1] "669 - TRUE"
#> [1] "670 - TRUE"
#> [1] "671 - TRUE"
#> [1] "672 - TRUE"
#> [1] "673 - TRUE"
#> [1] "674 - TRUE"
#> [1] "675 - TRUE"
#> [1] "676 - TRUE"
#> [1] "677 - TRUE"
#> [1] "678 - TRUE"
#> [1] "679 - TRUE"
#> [1] "680 - TRUE"
#> [1] "681 - TRUE"
#> [1] "682 - TRUE"
#> [1] "683 - TRUE"
#> [1] "684 - TRUE"
#> [1] "685 - TRUE"
#> [1] "686 - TRUE"
#> [1] "687 - TRUE"
#> [1] "688 - TRUE"
#> [1] "689 - TRUE"
#> [1] "690 - TRUE"
#> [1] "691 - TRUE"
#> [1] "692 - TRUE"
#> [1] "693 - TRUE"
#> [1] "694 - TRUE"
#> [1] "695 - TRUE"
#> [1] "696 - TRUE"
#> [1] "697 - TRUE"
#> [1] "698 - TRUE"
#> [1] "699 - TRUE"
#> [1] "700 - TRUE"
#> [1] "701 - TRUE"
#> [1] "702 - TRUE"
#> [1] "703 - TRUE"
#> [1] "704 - TRUE"
#> [1] "705 - TRUE"
#> [1] "706 - TRUE"
#> [1] "707 - TRUE"
#> [1] "708 - TRUE"
#> [1] "709 - TRUE"
#> [1] "710 - TRUE"
#> [1] "711 - TRUE"
#> [1] "712 - TRUE"
#> [1] "713 - TRUE"
#> [1] "714 - TRUE"
#> [1] "715 - TRUE"
#> [1] "716 - TRUE"
#> [1] "717 - TRUE"
#> [1] "718 - TRUE"
#> [1] "719 - TRUE"
#> [1] "720 - TRUE"
#> [1] "721 - TRUE"
#> [1] "722 - TRUE"
#> [1] "723 - TRUE"
#> [1] "724 - TRUE"
#> [1] "725 - TRUE"
#> [1] "726 - TRUE"
#> [1] "727 - TRUE"
#> [1] "728 - TRUE"
#> [1] "729 - TRUE"
#> [1] "730 - TRUE"
#> [1] "731 - TRUE"
#> [1] "732 - TRUE"
#> [1] "733 - TRUE"
#> [1] "734 - TRUE"
#> [1] "735 - TRUE"
#> [1] "736 - TRUE"
#> [1] "737 - TRUE"
#> [1] "738 - TRUE"
#> [1] "739 - TRUE"
#> [1] "740 - TRUE"
#> [1] "741 - TRUE"
#> [1] "742 - TRUE"
#> [1] "743 - TRUE"
#> [1] "744 - TRUE"
#> [1] "745 - TRUE"
#> [1] "746 - TRUE"
#> [1] "747 - TRUE"
#> [1] "748 - TRUE"
#> [1] "749 - TRUE"
#> [1] "750 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "751 - TRUE"
#> [1] "752 - TRUE"
#> [1] "753 - TRUE"
#> [1] "754 - database is locked"
#> [1] "755 - TRUE"
#> [1] "756 - TRUE"
#> [1] "757 - TRUE"
#> [1] "758 - TRUE"
#> [1] "759 - TRUE"
#> [1] "760 - TRUE"
#> [1] "761 - TRUE"
#> [1] "762 - TRUE"
#> [1] "763 - TRUE"
#> [1] "764 - TRUE"
#> [1] "765 - TRUE"
#> [1] "766 - TRUE"
#> [1] "767 - TRUE"
#> [1] "768 - TRUE"
#> [1] "769 - TRUE"
#> [1] "770 - TRUE"
#> [1] "771 - TRUE"
#> [1] "772 - TRUE"
#> [1] "773 - TRUE"
#> [1] "774 - TRUE"
#> [1] "775 - TRUE"
#> [1] "776 - TRUE"
#> [1] "777 - TRUE"
#> [1] "778 - TRUE"
#> [1] "779 - TRUE"
#> [1] "780 - TRUE"
#> [1] "781 - TRUE"
#> [1] "782 - TRUE"
#> [1] "783 - TRUE"
#> [1] "784 - TRUE"
#> [1] "785 - TRUE"
#> [1] "786 - TRUE"
#> [1] "787 - TRUE"
#> [1] "788 - TRUE"
#> [1] "789 - TRUE"
#> [1] "790 - TRUE"
#> [1] "791 - TRUE"
#> [1] "792 - TRUE"
#> [1] "793 - TRUE"
#> [1] "794 - TRUE"
#> [1] "795 - TRUE"
#> [1] "796 - TRUE"
#> [1] "797 - TRUE"
#> [1] "798 - TRUE"
#> [1] "799 - TRUE"
#> [1] "800 - TRUE"
#> [1] "801 - TRUE"
#> [1] "802 - TRUE"
#> [1] "803 - TRUE"
#> [1] "804 - TRUE"
#> [1] "805 - TRUE"
#> [1] "806 - TRUE"
#> [1] "807 - TRUE"
#> [1] "808 - TRUE"
#> [1] "809 - TRUE"
#> [1] "810 - TRUE"
#> [1] "811 - TRUE"
#> [1] "812 - TRUE"
#> [1] "813 - TRUE"
#> [1] "814 - TRUE"
#> [1] "815 - TRUE"
#> [1] "816 - TRUE"
#> [1] "817 - TRUE"
#> [1] "818 - TRUE"
#> [1] "819 - TRUE"
#> [1] "820 - TRUE"
#> [1] "821 - TRUE"
#> [1] "822 - TRUE"
#> [1] "823 - TRUE"
#> [1] "824 - TRUE"
#> [1] "825 - TRUE"
#> [1] "826 - TRUE"
#> [1] "827 - TRUE"
#> [1] "828 - TRUE"
#> [1] "829 - TRUE"
#> [1] "830 - TRUE"
#> [1] "831 - TRUE"
#> [1] "832 - TRUE"
#> [1] "833 - TRUE"
#> [1] "834 - TRUE"
#> [1] "835 - TRUE"
#> [1] "836 - TRUE"
#> [1] "837 - TRUE"
#> [1] "838 - TRUE"
#> [1] "839 - TRUE"
#> [1] "840 - TRUE"
#> [1] "841 - TRUE"
#> [1] "842 - TRUE"
#> [1] "843 - TRUE"
#> [1] "844 - TRUE"
#> [1] "845 - TRUE"
#> [1] "846 - TRUE"
#> [1] "847 - TRUE"
#> [1] "848 - TRUE"
#> [1] "849 - TRUE"
#> [1] "850 - TRUE"
#> [1] "851 - TRUE"
#> [1] "852 - TRUE"
#> [1] "853 - TRUE"
#> [1] "854 - TRUE"
#> [1] "855 - TRUE"
#> [1] "856 - TRUE"
#> [1] "857 - TRUE"
#> [1] "858 - TRUE"
#> [1] "859 - TRUE"
#> [1] "860 - TRUE"
#> [1] "861 - TRUE"
#> [1] "862 - TRUE"
#> [1] "863 - TRUE"
#> [1] "864 - TRUE"
#> [1] "865 - TRUE"
#> [1] "866 - TRUE"
#> [1] "867 - TRUE"
#> [1] "868 - TRUE"
#> [1] "869 - TRUE"
#> [1] "870 - TRUE"
#> [1] "871 - TRUE"
#> [1] "872 - TRUE"
#> [1] "873 - TRUE"
#> [1] "874 - TRUE"
#> [1] "875 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "876 - TRUE"
#> [1] "877 - TRUE"
#> [1] "878 - TRUE"
#> [1] "879 - TRUE"
#> [1] "880 - TRUE"
#> [1] "881 - TRUE"
#> [1] "882 - TRUE"
#> [1] "883 - TRUE"
#> [1] "884 - TRUE"
#> [1] "885 - TRUE"
#> [1] "886 - TRUE"
#> [1] "887 - TRUE"
#> [1] "888 - TRUE"
#> [1] "889 - TRUE"
#> [1] "890 - TRUE"
#> [1] "891 - TRUE"
#> [1] "892 - TRUE"
#> [1] "893 - TRUE"
#> [1] "894 - TRUE"
#> [1] "895 - TRUE"
#> [1] "896 - TRUE"
#> [1] "897 - TRUE"
#> [1] "898 - TRUE"
#> [1] "899 - TRUE"
#> [1] "900 - TRUE"
#> [1] "901 - TRUE"
#> [1] "902 - TRUE"
#> [1] "903 - TRUE"
#> [1] "904 - TRUE"
#> [1] "905 - TRUE"
#> [1] "906 - TRUE"
#> [1] "907 - TRUE"
#> [1] "908 - TRUE"
#> [1] "909 - TRUE"
#> [1] "910 - TRUE"
#> [1] "911 - TRUE"
#> [1] "912 - TRUE"
#> [1] "913 - TRUE"
#> [1] "914 - TRUE"
#> [1] "915 - TRUE"
#> [1] "916 - TRUE"
#> [1] "917 - TRUE"
#> [1] "918 - TRUE"
#> [1] "919 - TRUE"
#> [1] "920 - TRUE"
#> [1] "921 - TRUE"
#> [1] "922 - TRUE"
#> [1] "923 - TRUE"
#> [1] "924 - TRUE"
#> [1] "925 - TRUE"
#> [1] "926 - TRUE"
#> [1] "927 - TRUE"
#> [1] "928 - TRUE"
#> [1] "929 - TRUE"
#> [1] "930 - TRUE"
#> [1] "931 - TRUE"
#> [1] "932 - TRUE"
#> [1] "933 - TRUE"
#> [1] "934 - TRUE"
#> [1] "935 - TRUE"
#> [1] "936 - TRUE"
#> [1] "937 - TRUE"
#> [1] "938 - TRUE"
#> [1] "939 - TRUE"
#> [1] "940 - TRUE"
#> [1] "941 - TRUE"
#> [1] "942 - TRUE"
#> [1] "943 - TRUE"
#> [1] "944 - TRUE"
#> [1] "945 - TRUE"
#> [1] "946 - TRUE"
#> [1] "947 - TRUE"
#> [1] "948 - TRUE"
#> [1] "949 - TRUE"
#> [1] "950 - TRUE"
#> [1] "951 - TRUE"
#> [1] "952 - TRUE"
#> [1] "953 - TRUE"
#> [1] "954 - TRUE"
#> [1] "955 - TRUE"
#> [1] "956 - TRUE"
#> [1] "957 - TRUE"
#> [1] "958 - TRUE"
#> [1] "959 - TRUE"
#> [1] "960 - TRUE"
#> [1] "961 - TRUE"
#> [1] "962 - TRUE"
#> [1] "963 - TRUE"
#> [1] "964 - TRUE"
#> [1] "965 - TRUE"
#> [1] "966 - TRUE"
#> [1] "967 - TRUE"
#> [1] "968 - TRUE"
#> [1] "969 - TRUE"
#> [1] "970 - TRUE"
#> [1] "971 - TRUE"
#> [1] "972 - TRUE"
#> [1] "973 - TRUE"
#> [1] "974 - TRUE"
#> [1] "975 - TRUE"
#> [1] "976 - TRUE"
#> [1] "977 - TRUE"
#> [1] "978 - TRUE"
#> [1] "979 - TRUE"
#> [1] "980 - TRUE"
#> [1] "981 - TRUE"
#> [1] "982 - TRUE"
#> [1] "983 - TRUE"
#> [1] "984 - TRUE"
#> [1] "985 - TRUE"
#> [1] "986 - TRUE"
#> [1] "987 - TRUE"
#> [1] "988 - TRUE"
#> [1] "989 - TRUE"
#> [1] "990 - TRUE"
#> [1] "991 - TRUE"
#> [1] "992 - TRUE"
#> [1] "993 - TRUE"
#> [1] "994 - TRUE"
#> [1] "995 - TRUE"
#> [1] "996 - TRUE"
#> [1] "997 - TRUE"
#> [1] "998 - TRUE"
#> [1] "999 - TRUE"
#> [1] "1000 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
con <- dbConnect(RSQLite::SQLite(), dbname = file.path("bd_test.db"))
dbGetQuery(con, "SELECT n_loop FROM tb_teste_iris ORDER BY n_loop")
#> n_loop
#> 1 1
#> 2 2
#> 3 3
#> 4 4
#> 5 5
#> 6 6
#> 7 7
#> 8 8
#> 9 9
#> 10 10
#> 11 11
#> 12 12
#> 13 13
#> 14 14
#> 15 15
#> 16 16
#> 17 17
#> 18 18
#> 19 19
#> 20 20
#> 21 21
#> 22 22
#> 23 23
#> 24 24
#> 25 25
#> 26 26
#> 27 27
#> 28 28
#> 29 29
#> 30 30
#> 31 31
#> 32 32
#> 33 33
#> 34 34
#> 35 35
#> 36 36
#> 37 37
#> 38 38
#> 39 39
#> 40 40
#> 41 41
#> 42 42
#> 43 43
#> 44 44
#> 45 46
#> 46 47
#> 47 48
#> 48 49
#> 49 50
#> 50 51
#> 51 52
#> 52 53
#> 53 54
#> 54 55
#> 55 56
#> 56 57
#> 57 58
#> 58 59
#> 59 60
#> 60 61
#> 61 62
#> 62 63
#> 63 64
#> 64 65
#> 65 66
#> 66 67
#> 67 68
#> 68 69
#> 69 70
#> 70 71
#> 71 72
#> 72 73
#> 73 74
#> 74 75
#> 75 76
#> 76 77
#> 77 78
#> 78 79
#> 79 80
#> 80 81
#> 81 82
#> 82 83
#> 83 84
#> 84 85
#> 85 86
#> 86 87
#> 87 88
#> 88 89
#> 89 90
#> 90 91
#> 91 92
#> 92 93
#> 93 94
#> 94 95
#> 95 96
#> 96 97
#> 97 98
#> 98 99
#> 99 100
#> 100 101
#> 101 102
#> 102 103
#> 103 104
#> 104 105
#> 105 106
#> 106 107
#> 107 108
#> 108 109
#> 109 110
#> 110 111
#> 111 112
#> 112 113
#> 113 114
#> 114 115
#> 115 116
#> 116 117
#> 117 118
#> 118 119
#> 119 120
#> 120 121
#> 121 122
#> 122 123
#> 123 124
#> 124 125
#> 125 126
#> 126 127
#> 127 128
#> 128 129
#> 129 130
#> 130 131
#> 131 132
#> 132 133
#> 133 134
#> 134 135
#> 135 136
#> 136 137
#> 137 138
#> 138 139
#> 139 140
#> 140 141
#> 141 142
#> 142 143
#> 143 144
#> 144 145
#> 145 147
#> 146 148
#> 147 149
#> 148 150
#> 149 151
#> 150 152
#> 151 153
#> 152 154
#> 153 155
#> 154 156
#> 155 157
#> 156 158
#> 157 159
#> 158 160
#> 159 161
#> 160 162
#> 161 163
#> 162 165
#> 163 166
#> 164 167
#> 165 168
#> 166 169
#> 167 170
#> 168 171
#> 169 172
#> 170 173
#> 171 174
#> 172 175
#> 173 176
#> 174 177
#> 175 178
#> 176 179
#> 177 180
#> 178 181
#> 179 182
#> 180 183
#> 181 184
#> 182 185
#> 183 186
#> 184 187
#> 185 188
#> 186 189
#> 187 190
#> 188 191
#> 189 192
#> 190 193
#> 191 194
#> 192 195
#> 193 196
#> 194 197
#> 195 198
#> 196 199
#> 197 200
#> 198 201
#> 199 202
#> 200 203
#> 201 204
#> 202 205
#> 203 206
#> 204 207
#> 205 208
#> 206 209
#> 207 210
#> 208 211
#> 209 212
#> 210 213
#> 211 214
#> 212 215
#> 213 216
#> 214 217
#> 215 218
#> 216 219
#> 217 220
#> 218 221
#> 219 222
#> 220 223
#> 221 224
#> 222 225
#> 223 226
#> 224 227
#> 225 228
#> 226 229
#> 227 230
#> 228 231
#> 229 232
#> 230 233
#> 231 234
#> 232 235
#> 233 236
#> 234 237
#> 235 239
#> 236 240
#> 237 241
#> 238 242
#> 239 243
#> 240 244
#> 241 245
#> 242 246
#> 243 247
#> 244 248
#> 245 249
#> 246 250
#> 247 251
#> 248 252
#> 249 253
#> 250 254
#> 251 255
#> 252 256
#> 253 257
#> 254 258
#> 255 259
#> 256 260
#> 257 261
#> 258 262
#> 259 263
#> 260 264
#> 261 265
#> 262 266
#> 263 267
#> 264 268
#> 265 269
#> 266 270
#> 267 271
#> 268 272
#> 269 273
#> 270 274
#> 271 275
#> 272 276
#> 273 277
#> 274 278
#> 275 279
#> 276 280
#> 277 281
#> 278 282
#> 279 283
#> 280 284
#> 281 285
#> 282 286
#> 283 287
#> 284 288
#> 285 289
#> 286 290
#> 287 291
#> 288 292
#> 289 293
#> 290 294
#> 291 295
#> 292 296
#> 293 297
#> 294 298
#> 295 299
#> 296 300
#> 297 301
#> 298 302
#> 299 303
#> 300 304
#> 301 305
#> 302 306
#> 303 307
#> 304 308
#> 305 309
#> 306 310
#> 307 311
#> 308 312
#> 309 313
#> 310 314
#> 311 315
#> 312 316
#> 313 317
#> 314 318
#> 315 319
#> 316 320
#> 317 321
#> 318 322
#> 319 323
#> 320 324
#> 321 325
#> 322 326
#> 323 327
#> 324 328
#> 325 329
#> 326 330
#> 327 331
#> 328 332
#> 329 333
#> 330 334
#> 331 335
#> 332 336
#> 333 337
#> 334 338
#> 335 339
#> 336 340
#> 337 341
#> 338 342
#> 339 343
#> 340 344
#> 341 345
#> 342 346
#> 343 347
#> 344 348
#> 345 349
#> 346 350
#> 347 351
#> 348 352
#> 349 353
#> 350 354
#> 351 355
#> 352 356
#> 353 357
#> 354 358
#> 355 359
#> 356 360
#> 357 361
#> 358 362
#> 359 363
#> 360 364
#> 361 365
#> 362 366
#> 363 367
#> 364 368
#> 365 369
#> 366 370
#> 367 371
#> 368 372
#> 369 373
#> 370 374
#> 371 375
#> 372 376
#> 373 377
#> 374 378
#> 375 379
#> 376 380
#> 377 381
#> 378 382
#> 379 383
#> 380 384
#> 381 385
#> 382 386
#> 383 387
#> 384 388
#> 385 389
#> 386 390
#> 387 391
#> 388 392
#> 389 393
#> 390 394
#> 391 395
#> 392 396
#> 393 397
#> 394 398
#> 395 399
#> 396 400
#> 397 401
#> 398 402
#> 399 403
#> 400 404
#> 401 405
#> 402 406
#> 403 407
#> 404 408
#> 405 409
#> 406 410
#> 407 411
#> 408 412
#> 409 413
#> 410 414
#> 411 415
#> 412 416
#> 413 417
#> 414 418
#> 415 419
#> 416 420
#> 417 421
#> 418 422
#> 419 423
#> 420 424
#> 421 425
#> 422 426
#> 423 427
#> 424 428
#> 425 429
#> 426 430
#> 427 431
#> 428 432
#> 429 433
#> 430 434
#> 431 435
#> 432 436
#> 433 437
#> 434 438
#> 435 439
#> 436 440
#> 437 441
#> 438 442
#> 439 443
#> 440 444
#> 441 445
#> 442 446
#> 443 447
#> 444 448
#> 445 449
#> 446 450
#> 447 451
#> 448 452
#> 449 453
#> 450 454
#> 451 455
#> 452 456
#> 453 457
#> 454 458
#> 455 459
#> 456 460
#> 457 461
#> 458 462
#> 459 463
#> 460 464
#> 461 465
#> 462 466
#> 463 467
#> 464 468
#> 465 469
#> 466 470
#> 467 471
#> 468 472
#> 469 473
#> 470 474
#> 471 475
#> 472 476
#> 473 477
#> 474 478
#> 475 479
#> 476 480
#> 477 481
#> 478 482
#> 479 483
#> 480 484
#> 481 485
#> 482 486
#> 483 487
#> 484 488
#> 485 489
#> 486 490
#> 487 491
#> 488 492
#> 489 493
#> 490 494
#> 491 495
#> 492 496
#> 493 497
#> 494 498
#> 495 499
#> 496 500
#> 497 501
#> 498 502
#> 499 503
#> 500 504
#> 501 505
#> 502 506
#> 503 507
#> 504 508
#> 505 509
#> 506 510
#> 507 511
#> 508 512
#> 509 513
#> 510 514
#> 511 515
#> 512 516
#> 513 517
#> 514 518
#> 515 519
#> 516 520
#> 517 521
#> 518 522
#> 519 523
#> 520 524
#> 521 525
#> 522 526
#> 523 527
#> 524 528
#> 525 529
#> 526 530
#> 527 531
#> 528 532
#> 529 533
#> 530 534
#> 531 535
#> 532 536
#> 533 537
#> 534 538
#> 535 539
#> 536 540
#> 537 541
#> 538 542
#> 539 543
#> 540 544
#> 541 545
#> 542 546
#> 543 547
#> 544 548
#> 545 549
#> 546 550
#> 547 551
#> 548 552
#> 549 553
#> 550 554
#> 551 555
#> 552 556
#> 553 557
#> 554 558
#> 555 559
#> 556 560
#> 557 561
#> 558 562
#> 559 563
#> 560 564
#> 561 565
#> 562 566
#> 563 567
#> 564 568
#> 565 569
#> 566 570
#> 567 571
#> 568 572
#> 569 573
#> 570 574
#> 571 575
#> 572 576
#> 573 577
#> 574 578
#> 575 579
#> 576 580
#> 577 581
#> 578 582
#> 579 583
#> 580 584
#> 581 585
#> 582 586
#> 583 587
#> 584 588
#> 585 589
#> 586 590
#> 587 591
#> 588 592
#> 589 593
#> 590 594
#> 591 595
#> 592 596
#> 593 597
#> 594 598
#> 595 599
#> 596 600
#> 597 601
#> 598 602
#> 599 603
#> 600 604
#> 601 605
#> 602 606
#> 603 607
#> 604 608
#> 605 609
#> 606 610
#> 607 611
#> 608 612
#> 609 613
#> 610 614
#> 611 615
#> 612 616
#> 613 617
#> 614 618
#> 615 619
#> 616 620
#> 617 621
#> 618 622
#> 619 623
#> 620 624
#> 621 625
#> 622 626
#> 623 627
#> 624 628
#> 625 629
#> 626 630
#> 627 631
#> 628 632
#> 629 633
#> 630 634
#> 631 635
#> 632 636
#> 633 637
#> 634 638
#> 635 639
#> 636 641
#> 637 642
#> 638 643
#> 639 644
#> 640 645
#> 641 646
#> 642 647
#> 643 648
#> 644 649
#> 645 650
#> 646 651
#> 647 652
#> 648 653
#> 649 654
#> 650 655
#> 651 656
#> 652 657
#> 653 658
#> 654 659
#> 655 660
#> 656 661
#> 657 662
#> 658 663
#> 659 664
#> 660 665
#> 661 666
#> 662 667
#> 663 668
#> 664 669
#> 665 670
#> 666 671
#> 667 672
#> 668 673
#> 669 674
#> 670 675
#> 671 676
#> 672 677
#> 673 678
#> 674 679
#> 675 680
#> 676 681
#> 677 682
#> 678 683
#> 679 684
#> 680 685
#> 681 686
#> 682 687
#> 683 688
#> 684 689
#> 685 690
#> 686 691
#> 687 692
#> 688 693
#> 689 694
#> 690 695
#> 691 696
#> 692 697
#> 693 698
#> 694 699
#> 695 700
#> 696 701
#> 697 702
#> 698 703
#> 699 704
#> 700 705
#> 701 706
#> 702 707
#> 703 708
#> 704 709
#> 705 710
#> 706 711
#> 707 712
#> 708 713
#> 709 714
#> 710 715
#> 711 716
#> 712 717
#> 713 718
#> 714 719
#> 715 720
#> 716 721
#> 717 722
#> 718 723
#> 719 724
#> 720 725
#> 721 726
#> 722 727
#> 723 728
#> 724 729
#> 725 730
#> 726 731
#> 727 732
#> 728 733
#> 729 734
#> 730 735
#> 731 736
#> 732 737
#> 733 738
#> 734 739
#> 735 740
#> 736 741
#> 737 742
#> 738 743
#> 739 744
#> 740 745
#> 741 746
#> 742 747
#> 743 748
#> 744 749
#> 745 750
#> 746 751
#> 747 752
#> 748 753
#> 749 755
#> 750 756
#> 751 757
#> 752 758
#> 753 759
#> 754 760
#> 755 761
#> 756 762
#> 757 763
#> 758 764
#> 759 765
#> 760 766
#> 761 767
#> 762 768
#> 763 769
#> 764 770
#> 765 771
#> 766 772
#> 767 773
#> 768 774
#> 769 775
#> 770 776
#> 771 777
#> 772 778
#> 773 779
#> 774 780
#> 775 781
#> 776 782
#> 777 783
#> 778 784
#> 779 785
#> 780 786
#> 781 787
#> 782 788
#> 783 789
#> 784 790
#> 785 791
#> 786 792
#> 787 793
#> 788 794
#> 789 795
#> 790 796
#> 791 797
#> 792 798
#> 793 799
#> 794 800
#> 795 801
#> 796 802
#> 797 803
#> 798 804
#> 799 805
#> 800 806
#> 801 807
#> 802 808
#> 803 809
#> 804 810
#> 805 811
#> 806 812
#> 807 813
#> 808 814
#> 809 815
#> 810 816
#> 811 817
#> 812 818
#> 813 819
#> 814 820
#> 815 821
#> 816 822
#> 817 823
#> 818 824
#> 819 825
#> 820 826
#> 821 827
#> 822 828
#> 823 829
#> 824 830
#> 825 831
#> 826 832
#> 827 833
#> 828 834
#> 829 835
#> 830 836
#> 831 837
#> 832 838
#> 833 839
#> 834 840
#> 835 841
#> 836 842
#> 837 843
#> 838 844
#> 839 845
#> 840 846
#> 841 847
#> 842 848
#> 843 849
#> 844 850
#> 845 851
#> 846 852
#> 847 853
#> 848 854
#> 849 855
#> 850 856
#> 851 857
#> 852 858
#> 853 859
#> 854 860
#> 855 861
#> 856 862
#> 857 863
#> 858 864
#> 859 865
#> 860 866
#> 861 867
#> 862 868
#> 863 869
#> 864 870
#> 865 871
#> 866 872
#> 867 873
#> 868 874
#> 869 875
#> 870 876
#> 871 877
#> 872 878
#> 873 879
#> 874 880
#> 875 881
#> 876 882
#> 877 883
#> 878 884
#> 879 885
#> 880 886
#> 881 887
#> 882 888
#> 883 889
#> 884 890
#> 885 891
#> 886 892
#> 887 893
#> 888 894
#> 889 895
#> 890 896
#> 891 897
#> 892 898
#> 893 899
#> 894 900
#> 895 901
#> 896 902
#> 897 903
#> 898 904
#> 899 905
#> 900 906
#> 901 907
#> 902 908
#> 903 909
#> 904 910
#> 905 911
#> 906 912
#> 907 913
#> 908 914
#> 909 915
#> 910 916
#> 911 917
#> 912 918
#> 913 919
#> 914 920
#> 915 921
#> 916 922
#> 917 923
#> 918 924
#> 919 925
#> 920 926
#> 921 927
#> 922 928
#> 923 929
#> 924 930
#> 925 931
#> 926 932
#> 927 933
#> 928 934
#> 929 935
#> 930 936
#> 931 937
#> 932 938
#> 933 939
#> 934 940
#> 935 941
#> 936 942
#> 937 943
#> 938 944
#> 939 945
#> 940 946
#> 941 947
#> 942 948
#> 943 949
#> 944 950
#> 945 951
#> 946 952
#> 947 953
#> 948 954
#> 949 955
#> 950 956
#> 951 957
#> 952 958
#> 953 959
#> 954 960
#> 955 961
#> 956 962
#> 957 963
#> 958 964
#> 959 965
#> 960 966
#> 961 967
#> 962 968
#> 963 969
#> 964 970
#> 965 971
#> 966 972
#> 967 973
#> 968 974
#> 969 975
#> 970 976
#> 971 977
#> 972 978
#> 973 979
#> 974 980
#> 975 981
#> 976 982
#> 977 983
#> 978 984
#> 979 985
#> 980 986
#> 981 987
#> 982 988
#> 983 989
#> 984 990
#> 985 991
#> 986 992
#> 987 993
#> 988 994
#> 989 995
#> 990 996
#> 991 997
#> 992 998
#> 993 999
#> 994 1000
Created on 2021-01-11 by the reprex package (v0.3.0)
Weird, need to take a look on Windows.
Reprex with R 4.0.3:
library(DBI)
library(RSQLite)
library(furrr)
#> Carregando pacotes exigidos: future
library(future)
library(magrittr)
library(purrr)
#>
#> Attaching package: 'purrr'
#> The following object is masked from 'package:magrittr':
#>
#> set_names
n_teste <- 1:1000
unlink("bd_test.db")
connect_sgbd <- function() {
conexao <- DBI::dbConnect(RSQLite::SQLite(),
dbname = file.path("bd_test.db")
)
return(conexao)
}
teste_write_sqlite <- function(n_teste) {
tb_teste_iris <- iris[1, ] %>%
dplyr::mutate(n_loop = n_teste)
tentativas <- purrr::rate_delay(pause = 2,
max_times = 20
)
insist_execute_sqlite <- purrr::insistently(DBI::dbExecute,
tentativas,
quiet = FALSE
)
insist_dbWriteTable <- purrr::insistently(DBI::dbWriteTable,
tentativas,
quiet = FALSE
)
conn <- connect_sgbd()
on.exit(dbDisconnect(conn))
tryCatch(
{
insist_execute_sqlite(conn, "BEGIN IMMEDIATE TRANSACTION")
# Rollback on failure
on.exit(try(dbExecute(conn, "ROLLBACK TRANSACTION")))
out <- insist_dbWriteTable(conn, "tb_teste_iris", tb_teste_iris, append = TRUE)
dbExecute(conn, "COMMIT TRANSACTION")
# Don't rollback on success
on.exit(NULL)
print(paste(n_teste, "-", out))
},
error = function(e) {
print(paste(n_teste, "-", conditionMessage(e)))
}
)
}
future::plan("multisession",
workers = 8
)
options(future.rng.onMisuse = "ignore")
furrr::future_walk(n_teste, teste_write_sqlite, .progress = TRUE)
#> [1] "1 - TRUE"
#> [1] "2 - TRUE"
#> [1] "3 - TRUE"
#> [1] "4 - TRUE"
#> [1] "5 - TRUE"
#> [1] "6 - TRUE"
#> [1] "7 - TRUE"
#> [1] "8 - TRUE"
#> [1] "9 - TRUE"
#> [1] "10 - TRUE"
#> [1] "11 - TRUE"
#> [1] "12 - TRUE"
#> [1] "13 - TRUE"
#> [1] "14 - TRUE"
#> [1] "15 - TRUE"
#> [1] "16 - TRUE"
#> [1] "17 - TRUE"
#> [1] "18 - TRUE"
#> [1] "19 - TRUE"
#> [1] "20 - TRUE"
#> [1] "21 - TRUE"
#> [1] "22 - TRUE"
#> [1] "23 - TRUE"
#> [1] "24 - TRUE"
#> [1] "25 - TRUE"
#> [1] "26 - TRUE"
#> [1] "27 - TRUE"
#> [1] "28 - TRUE"
#> [1] "29 - TRUE"
#> [1] "30 - TRUE"
#> [1] "31 - TRUE"
#> [1] "32 - TRUE"
#> [1] "33 - TRUE"
#> [1] "34 - TRUE"
#> [1] "35 - TRUE"
#> [1] "36 - TRUE"
#> [1] "37 - TRUE"
#> [1] "38 - TRUE"
#> [1] "39 - database is locked"
#> [1] "40 - TRUE"
#> [1] "41 - TRUE"
#> [1] "42 - TRUE"
#> [1] "43 - TRUE"
#> [1] "44 - TRUE"
#> [1] "45 - TRUE"
#> [1] "46 - TRUE"
#> [1] "47 - TRUE"
#> [1] "48 - TRUE"
#> [1] "49 - TRUE"
#> [1] "50 - TRUE"
#> [1] "51 - TRUE"
#> [1] "52 - TRUE"
#> [1] "53 - TRUE"
#> [1] "54 - TRUE"
#> [1] "55 - TRUE"
#> [1] "56 - TRUE"
#> [1] "57 - TRUE"
#> [1] "58 - TRUE"
#> [1] "59 - TRUE"
#> [1] "60 - TRUE"
#> [1] "61 - TRUE"
#> [1] "62 - TRUE"
#> [1] "63 - TRUE"
#> [1] "64 - TRUE"
#> [1] "65 - TRUE"
#> [1] "66 - TRUE"
#> [1] "67 - TRUE"
#> [1] "68 - TRUE"
#> [1] "69 - TRUE"
#> [1] "70 - TRUE"
#> [1] "71 - TRUE"
#> [1] "72 - TRUE"
#> [1] "73 - TRUE"
#> [1] "74 - TRUE"
#> [1] "75 - TRUE"
#> [1] "76 - TRUE"
#> [1] "77 - TRUE"
#> [1] "78 - TRUE"
#> [1] "79 - TRUE"
#> [1] "80 - TRUE"
#> [1] "81 - TRUE"
#> [1] "82 - TRUE"
#> [1] "83 - TRUE"
#> [1] "84 - TRUE"
#> [1] "85 - TRUE"
#> [1] "86 - TRUE"
#> [1] "87 - TRUE"
#> [1] "88 - TRUE"
#> [1] "89 - TRUE"
#> [1] "90 - TRUE"
#> [1] "91 - TRUE"
#> [1] "92 - TRUE"
#> [1] "93 - TRUE"
#> [1] "94 - TRUE"
#> [1] "95 - TRUE"
#> [1] "96 - TRUE"
#> [1] "97 - TRUE"
#> [1] "98 - TRUE"
#> [1] "99 - TRUE"
#> [1] "100 - TRUE"
#> [1] "101 - TRUE"
#> [1] "102 - TRUE"
#> [1] "103 - TRUE"
#> [1] "104 - TRUE"
#> [1] "105 - TRUE"
#> [1] "106 - TRUE"
#> [1] "107 - TRUE"
#> [1] "108 - TRUE"
#> [1] "109 - TRUE"
#> [1] "110 - TRUE"
#> [1] "111 - TRUE"
#> [1] "112 - TRUE"
#> [1] "113 - TRUE"
#> [1] "114 - TRUE"
#> [1] "115 - TRUE"
#> [1] "116 - TRUE"
#> [1] "117 - TRUE"
#> [1] "118 - TRUE"
#> [1] "119 - TRUE"
#> [1] "120 - TRUE"
#> [1] "121 - TRUE"
#> [1] "122 - TRUE"
#> [1] "123 - TRUE"
#> [1] "124 - TRUE"
#> [1] "125 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "126 - TRUE"
#> [1] "127 - TRUE"
#> [1] "128 - TRUE"
#> [1] "129 - TRUE"
#> [1] "130 - TRUE"
#> [1] "131 - TRUE"
#> [1] "132 - TRUE"
#> [1] "133 - TRUE"
#> [1] "134 - TRUE"
#> [1] "135 - TRUE"
#> [1] "136 - TRUE"
#> [1] "137 - TRUE"
#> [1] "138 - TRUE"
#> [1] "139 - TRUE"
#> [1] "140 - TRUE"
#> [1] "141 - TRUE"
#> [1] "142 - TRUE"
#> [1] "143 - TRUE"
#> [1] "144 - TRUE"
#> [1] "145 - TRUE"
#> [1] "146 - TRUE"
#> [1] "147 - TRUE"
#> [1] "148 - TRUE"
#> [1] "149 - TRUE"
#> [1] "150 - TRUE"
#> [1] "151 - TRUE"
#> [1] "152 - TRUE"
#> [1] "153 - TRUE"
#> [1] "154 - TRUE"
#> [1] "155 - TRUE"
#> [1] "156 - TRUE"
#> [1] "157 - TRUE"
#> [1] "158 - TRUE"
#> [1] "159 - TRUE"
#> [1] "160 - TRUE"
#> [1] "161 - TRUE"
#> [1] "162 - TRUE"
#> [1] "163 - TRUE"
#> [1] "164 - TRUE"
#> [1] "165 - TRUE"
#> [1] "166 - TRUE"
#> [1] "167 - TRUE"
#> [1] "168 - TRUE"
#> [1] "169 - TRUE"
#> [1] "170 - TRUE"
#> [1] "171 - TRUE"
#> [1] "172 - TRUE"
#> [1] "173 - TRUE"
#> [1] "174 - TRUE"
#> [1] "175 - TRUE"
#> [1] "176 - TRUE"
#> [1] "177 - TRUE"
#> [1] "178 - TRUE"
#> [1] "179 - TRUE"
#> [1] "180 - TRUE"
#> [1] "181 - TRUE"
#> [1] "182 - TRUE"
#> [1] "183 - TRUE"
#> [1] "184 - TRUE"
#> [1] "185 - TRUE"
#> [1] "186 - TRUE"
#> [1] "187 - TRUE"
#> [1] "188 - TRUE"
#> [1] "189 - TRUE"
#> [1] "190 - TRUE"
#> [1] "191 - TRUE"
#> [1] "192 - TRUE"
#> [1] "193 - TRUE"
#> [1] "194 - TRUE"
#> [1] "195 - TRUE"
#> [1] "196 - TRUE"
#> [1] "197 - TRUE"
#> [1] "198 - TRUE"
#> [1] "199 - TRUE"
#> [1] "200 - TRUE"
#> [1] "201 - TRUE"
#> [1] "202 - TRUE"
#> [1] "203 - TRUE"
#> [1] "204 - TRUE"
#> [1] "205 - TRUE"
#> [1] "206 - TRUE"
#> [1] "207 - TRUE"
#> [1] "208 - TRUE"
#> [1] "209 - TRUE"
#> [1] "210 - TRUE"
#> [1] "211 - TRUE"
#> [1] "212 - TRUE"
#> [1] "213 - TRUE"
#> [1] "214 - TRUE"
#> [1] "215 - TRUE"
#> [1] "216 - TRUE"
#> [1] "217 - TRUE"
#> [1] "218 - TRUE"
#> [1] "219 - TRUE"
#> [1] "220 - TRUE"
#> [1] "221 - TRUE"
#> [1] "222 - TRUE"
#> [1] "223 - TRUE"
#> [1] "224 - TRUE"
#> [1] "225 - TRUE"
#> [1] "226 - TRUE"
#> [1] "227 - TRUE"
#> [1] "228 - TRUE"
#> [1] "229 - TRUE"
#> [1] "230 - TRUE"
#> [1] "231 - TRUE"
#> [1] "232 - TRUE"
#> [1] "233 - TRUE"
#> [1] "234 - TRUE"
#> [1] "235 - TRUE"
#> [1] "236 - TRUE"
#> [1] "237 - TRUE"
#> [1] "238 - TRUE"
#> [1] "239 - TRUE"
#> [1] "240 - TRUE"
#> [1] "241 - TRUE"
#> [1] "242 - TRUE"
#> [1] "243 - TRUE"
#> [1] "244 - TRUE"
#> [1] "245 - TRUE"
#> [1] "246 - TRUE"
#> [1] "247 - TRUE"
#> [1] "248 - TRUE"
#> [1] "249 - TRUE"
#> [1] "250 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "251 - TRUE"
#> [1] "252 - TRUE"
#> [1] "253 - TRUE"
#> [1] "254 - TRUE"
#> [1] "255 - TRUE"
#> [1] "256 - TRUE"
#> [1] "257 - TRUE"
#> [1] "258 - TRUE"
#> [1] "259 - TRUE"
#> [1] "260 - TRUE"
#> [1] "261 - TRUE"
#> [1] "262 - TRUE"
#> [1] "263 - TRUE"
#> [1] "264 - TRUE"
#> [1] "265 - TRUE"
#> [1] "266 - TRUE"
#> [1] "267 - TRUE"
#> [1] "268 - TRUE"
#> [1] "269 - TRUE"
#> [1] "270 - TRUE"
#> [1] "271 - TRUE"
#> [1] "272 - TRUE"
#> [1] "273 - TRUE"
#> [1] "274 - TRUE"
#> [1] "275 - TRUE"
#> [1] "276 - TRUE"
#> [1] "277 - TRUE"
#> [1] "278 - TRUE"
#> [1] "279 - TRUE"
#> [1] "280 - TRUE"
#> [1] "281 - TRUE"
#> [1] "282 - TRUE"
#> [1] "283 - TRUE"
#> [1] "284 - TRUE"
#> [1] "285 - TRUE"
#> [1] "286 - TRUE"
#> [1] "287 - TRUE"
#> [1] "288 - TRUE"
#> [1] "289 - TRUE"
#> [1] "290 - TRUE"
#> [1] "291 - TRUE"
#> [1] "292 - TRUE"
#> [1] "293 - TRUE"
#> [1] "294 - TRUE"
#> [1] "295 - TRUE"
#> [1] "296 - TRUE"
#> [1] "297 - TRUE"
#> [1] "298 - TRUE"
#> [1] "299 - TRUE"
#> [1] "300 - TRUE"
#> [1] "301 - TRUE"
#> [1] "302 - TRUE"
#> [1] "303 - TRUE"
#> [1] "304 - TRUE"
#> [1] "305 - TRUE"
#> [1] "306 - TRUE"
#> [1] "307 - TRUE"
#> [1] "308 - TRUE"
#> [1] "309 - database is locked"
#> [1] "310 - TRUE"
#> [1] "311 - TRUE"
#> [1] "312 - TRUE"
#> [1] "313 - TRUE"
#> [1] "314 - TRUE"
#> [1] "315 - TRUE"
#> [1] "316 - TRUE"
#> [1] "317 - TRUE"
#> [1] "318 - TRUE"
#> [1] "319 - TRUE"
#> [1] "320 - TRUE"
#> [1] "321 - TRUE"
#> [1] "322 - TRUE"
#> [1] "323 - TRUE"
#> [1] "324 - TRUE"
#> [1] "325 - TRUE"
#> [1] "326 - TRUE"
#> [1] "327 - TRUE"
#> [1] "328 - TRUE"
#> [1] "329 - TRUE"
#> [1] "330 - TRUE"
#> [1] "331 - TRUE"
#> [1] "332 - TRUE"
#> [1] "333 - TRUE"
#> [1] "334 - TRUE"
#> [1] "335 - TRUE"
#> [1] "336 - TRUE"
#> [1] "337 - TRUE"
#> [1] "338 - TRUE"
#> [1] "339 - TRUE"
#> [1] "340 - TRUE"
#> [1] "341 - TRUE"
#> [1] "342 - TRUE"
#> [1] "343 - TRUE"
#> [1] "344 - TRUE"
#> [1] "345 - TRUE"
#> [1] "346 - TRUE"
#> [1] "347 - TRUE"
#> [1] "348 - TRUE"
#> [1] "349 - TRUE"
#> [1] "350 - TRUE"
#> [1] "351 - TRUE"
#> [1] "352 - TRUE"
#> [1] "353 - TRUE"
#> [1] "354 - TRUE"
#> [1] "355 - TRUE"
#> [1] "356 - TRUE"
#> [1] "357 - TRUE"
#> [1] "358 - TRUE"
#> [1] "359 - TRUE"
#> [1] "360 - TRUE"
#> [1] "361 - TRUE"
#> [1] "362 - TRUE"
#> [1] "363 - TRUE"
#> [1] "364 - TRUE"
#> [1] "365 - TRUE"
#> [1] "366 - TRUE"
#> [1] "367 - TRUE"
#> [1] "368 - TRUE"
#> [1] "369 - TRUE"
#> [1] "370 - TRUE"
#> [1] "371 - TRUE"
#> [1] "372 - TRUE"
#> [1] "373 - TRUE"
#> [1] "374 - TRUE"
#> [1] "375 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "376 - TRUE"
#> [1] "377 - TRUE"
#> [1] "378 - TRUE"
#> [1] "379 - TRUE"
#> [1] "380 - TRUE"
#> [1] "381 - TRUE"
#> [1] "382 - TRUE"
#> [1] "383 - TRUE"
#> [1] "384 - TRUE"
#> [1] "385 - TRUE"
#> [1] "386 - TRUE"
#> [1] "387 - TRUE"
#> [1] "388 - TRUE"
#> [1] "389 - TRUE"
#> [1] "390 - TRUE"
#> [1] "391 - TRUE"
#> [1] "392 - TRUE"
#> [1] "393 - TRUE"
#> [1] "394 - TRUE"
#> [1] "395 - TRUE"
#> [1] "396 - TRUE"
#> [1] "397 - TRUE"
#> [1] "398 - TRUE"
#> [1] "399 - TRUE"
#> [1] "400 - TRUE"
#> [1] "401 - TRUE"
#> [1] "402 - TRUE"
#> [1] "403 - TRUE"
#> [1] "404 - TRUE"
#> [1] "405 - TRUE"
#> [1] "406 - TRUE"
#> [1] "407 - TRUE"
#> [1] "408 - TRUE"
#> [1] "409 - TRUE"
#> [1] "410 - TRUE"
#> [1] "411 - TRUE"
#> [1] "412 - TRUE"
#> [1] "413 - TRUE"
#> [1] "414 - TRUE"
#> [1] "415 - TRUE"
#> [1] "416 - TRUE"
#> [1] "417 - TRUE"
#> [1] "418 - TRUE"
#> [1] "419 - TRUE"
#> [1] "420 - TRUE"
#> [1] "421 - TRUE"
#> [1] "422 - TRUE"
#> [1] "423 - TRUE"
#> [1] "424 - TRUE"
#> [1] "425 - TRUE"
#> [1] "426 - TRUE"
#> [1] "427 - TRUE"
#> [1] "428 - TRUE"
#> [1] "429 - TRUE"
#> [1] "430 - TRUE"
#> [1] "431 - TRUE"
#> [1] "432 - TRUE"
#> [1] "433 - TRUE"
#> [1] "434 - TRUE"
#> [1] "435 - TRUE"
#> [1] "436 - TRUE"
#> [1] "437 - TRUE"
#> [1] "438 - TRUE"
#> [1] "439 - TRUE"
#> [1] "440 - TRUE"
#> [1] "441 - TRUE"
#> [1] "442 - TRUE"
#> [1] "443 - TRUE"
#> [1] "444 - TRUE"
#> [1] "445 - TRUE"
#> [1] "446 - TRUE"
#> [1] "447 - TRUE"
#> [1] "448 - TRUE"
#> [1] "449 - TRUE"
#> [1] "450 - TRUE"
#> [1] "451 - TRUE"
#> [1] "452 - TRUE"
#> [1] "453 - TRUE"
#> [1] "454 - TRUE"
#> [1] "455 - TRUE"
#> [1] "456 - TRUE"
#> [1] "457 - TRUE"
#> [1] "458 - TRUE"
#> [1] "459 - TRUE"
#> [1] "460 - TRUE"
#> [1] "461 - TRUE"
#> [1] "462 - TRUE"
#> [1] "463 - TRUE"
#> [1] "464 - TRUE"
#> [1] "465 - TRUE"
#> [1] "466 - TRUE"
#> [1] "467 - TRUE"
#> [1] "468 - TRUE"
#> [1] "469 - TRUE"
#> [1] "470 - TRUE"
#> [1] "471 - TRUE"
#> [1] "472 - TRUE"
#> [1] "473 - TRUE"
#> [1] "474 - TRUE"
#> [1] "475 - database is locked"
#> [1] "476 - TRUE"
#> [1] "477 - TRUE"
#> [1] "478 - TRUE"
#> [1] "479 - TRUE"
#> [1] "480 - TRUE"
#> [1] "481 - TRUE"
#> [1] "482 - TRUE"
#> [1] "483 - TRUE"
#> [1] "484 - TRUE"
#> [1] "485 - TRUE"
#> [1] "486 - TRUE"
#> [1] "487 - TRUE"
#> [1] "488 - TRUE"
#> [1] "489 - TRUE"
#> [1] "490 - TRUE"
#> [1] "491 - TRUE"
#> [1] "492 - TRUE"
#> [1] "493 - TRUE"
#> [1] "494 - TRUE"
#> [1] "495 - TRUE"
#> [1] "496 - TRUE"
#> [1] "497 - TRUE"
#> [1] "498 - TRUE"
#> [1] "499 - TRUE"
#> [1] "500 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "501 - TRUE"
#> [1] "502 - TRUE"
#> [1] "503 - TRUE"
#> [1] "504 - TRUE"
#> [1] "505 - TRUE"
#> [1] "506 - TRUE"
#> [1] "507 - TRUE"
#> [1] "508 - TRUE"
#> [1] "509 - TRUE"
#> [1] "510 - TRUE"
#> [1] "511 - TRUE"
#> [1] "512 - TRUE"
#> [1] "513 - TRUE"
#> [1] "514 - TRUE"
#> [1] "515 - TRUE"
#> [1] "516 - TRUE"
#> [1] "517 - TRUE"
#> [1] "518 - TRUE"
#> [1] "519 - TRUE"
#> [1] "520 - TRUE"
#> [1] "521 - TRUE"
#> [1] "522 - TRUE"
#> [1] "523 - TRUE"
#> [1] "524 - TRUE"
#> [1] "525 - TRUE"
#> [1] "526 - TRUE"
#> [1] "527 - TRUE"
#> [1] "528 - TRUE"
#> [1] "529 - TRUE"
#> [1] "530 - TRUE"
#> [1] "531 - TRUE"
#> [1] "532 - TRUE"
#> [1] "533 - TRUE"
#> [1] "534 - TRUE"
#> [1] "535 - TRUE"
#> [1] "536 - TRUE"
#> [1] "537 - TRUE"
#> [1] "538 - TRUE"
#> [1] "539 - TRUE"
#> [1] "540 - TRUE"
#> [1] "541 - TRUE"
#> [1] "542 - TRUE"
#> [1] "543 - TRUE"
#> [1] "544 - TRUE"
#> [1] "545 - TRUE"
#> [1] "546 - TRUE"
#> [1] "547 - TRUE"
#> [1] "548 - TRUE"
#> [1] "549 - TRUE"
#> [1] "550 - TRUE"
#> [1] "551 - TRUE"
#> [1] "552 - TRUE"
#> [1] "553 - TRUE"
#> [1] "554 - TRUE"
#> [1] "555 - TRUE"
#> [1] "556 - TRUE"
#> [1] "557 - TRUE"
#> [1] "558 - TRUE"
#> [1] "559 - TRUE"
#> [1] "560 - TRUE"
#> [1] "561 - TRUE"
#> [1] "562 - TRUE"
#> [1] "563 - TRUE"
#> [1] "564 - TRUE"
#> [1] "565 - TRUE"
#> [1] "566 - TRUE"
#> [1] "567 - TRUE"
#> [1] "568 - TRUE"
#> [1] "569 - TRUE"
#> [1] "570 - TRUE"
#> [1] "571 - TRUE"
#> [1] "572 - TRUE"
#> [1] "573 - TRUE"
#> [1] "574 - TRUE"
#> [1] "575 - TRUE"
#> [1] "576 - TRUE"
#> [1] "577 - TRUE"
#> [1] "578 - TRUE"
#> [1] "579 - TRUE"
#> [1] "580 - TRUE"
#> [1] "581 - TRUE"
#> [1] "582 - TRUE"
#> [1] "583 - TRUE"
#> [1] "584 - TRUE"
#> [1] "585 - TRUE"
#> [1] "586 - TRUE"
#> [1] "587 - TRUE"
#> [1] "588 - TRUE"
#> [1] "589 - TRUE"
#> [1] "590 - TRUE"
#> [1] "591 - TRUE"
#> [1] "592 - TRUE"
#> [1] "593 - TRUE"
#> [1] "594 - TRUE"
#> [1] "595 - TRUE"
#> [1] "596 - TRUE"
#> [1] "597 - TRUE"
#> [1] "598 - TRUE"
#> [1] "599 - TRUE"
#> [1] "600 - TRUE"
#> [1] "601 - TRUE"
#> [1] "602 - TRUE"
#> [1] "603 - TRUE"
#> [1] "604 - TRUE"
#> [1] "605 - TRUE"
#> [1] "606 - TRUE"
#> [1] "607 - TRUE"
#> [1] "608 - TRUE"
#> [1] "609 - TRUE"
#> [1] "610 - TRUE"
#> [1] "611 - TRUE"
#> [1] "612 - TRUE"
#> [1] "613 - TRUE"
#> [1] "614 - TRUE"
#> [1] "615 - TRUE"
#> [1] "616 - TRUE"
#> [1] "617 - TRUE"
#> [1] "618 - TRUE"
#> [1] "619 - TRUE"
#> [1] "620 - TRUE"
#> [1] "621 - TRUE"
#> [1] "622 - TRUE"
#> [1] "623 - TRUE"
#> [1] "624 - TRUE"
#> [1] "625 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "626 - TRUE"
#> [1] "627 - TRUE"
#> [1] "628 - TRUE"
#> [1] "629 - TRUE"
#> [1] "630 - TRUE"
#> [1] "631 - TRUE"
#> [1] "632 - TRUE"
#> [1] "633 - TRUE"
#> [1] "634 - TRUE"
#> [1] "635 - TRUE"
#> [1] "636 - TRUE"
#> [1] "637 - TRUE"
#> [1] "638 - TRUE"
#> [1] "639 - TRUE"
#> [1] "640 - TRUE"
#> [1] "641 - TRUE"
#> [1] "642 - TRUE"
#> [1] "643 - TRUE"
#> [1] "644 - TRUE"
#> [1] "645 - TRUE"
#> [1] "646 - TRUE"
#> [1] "647 - TRUE"
#> [1] "648 - TRUE"
#> [1] "649 - TRUE"
#> [1] "650 - TRUE"
#> [1] "651 - TRUE"
#> [1] "652 - TRUE"
#> [1] "653 - TRUE"
#> [1] "654 - TRUE"
#> [1] "655 - TRUE"
#> [1] "656 - TRUE"
#> [1] "657 - TRUE"
#> [1] "658 - TRUE"
#> [1] "659 - TRUE"
#> [1] "660 - TRUE"
#> [1] "661 - TRUE"
#> [1] "662 - TRUE"
#> [1] "663 - TRUE"
#> [1] "664 - TRUE"
#> [1] "665 - TRUE"
#> [1] "666 - TRUE"
#> [1] "667 - TRUE"
#> [1] "668 - TRUE"
#> [1] "669 - database is locked"
#> [1] "670 - TRUE"
#> [1] "671 - TRUE"
#> [1] "672 - TRUE"
#> [1] "673 - TRUE"
#> [1] "674 - TRUE"
#> [1] "675 - TRUE"
#> [1] "676 - TRUE"
#> [1] "677 - TRUE"
#> [1] "678 - TRUE"
#> [1] "679 - TRUE"
#> [1] "680 - TRUE"
#> [1] "681 - TRUE"
#> [1] "682 - TRUE"
#> [1] "683 - TRUE"
#> [1] "684 - TRUE"
#> [1] "685 - TRUE"
#> [1] "686 - TRUE"
#> [1] "687 - TRUE"
#> [1] "688 - TRUE"
#> [1] "689 - TRUE"
#> [1] "690 - TRUE"
#> [1] "691 - TRUE"
#> [1] "692 - TRUE"
#> [1] "693 - TRUE"
#> [1] "694 - TRUE"
#> [1] "695 - TRUE"
#> [1] "696 - TRUE"
#> [1] "697 - TRUE"
#> [1] "698 - TRUE"
#> [1] "699 - TRUE"
#> [1] "700 - TRUE"
#> [1] "701 - TRUE"
#> [1] "702 - TRUE"
#> [1] "703 - TRUE"
#> [1] "704 - TRUE"
#> [1] "705 - TRUE"
#> [1] "706 - TRUE"
#> [1] "707 - TRUE"
#> [1] "708 - TRUE"
#> [1] "709 - TRUE"
#> [1] "710 - TRUE"
#> [1] "711 - TRUE"
#> [1] "712 - TRUE"
#> [1] "713 - TRUE"
#> [1] "714 - TRUE"
#> [1] "715 - TRUE"
#> [1] "716 - TRUE"
#> [1] "717 - TRUE"
#> [1] "718 - TRUE"
#> [1] "719 - TRUE"
#> [1] "720 - TRUE"
#> [1] "721 - TRUE"
#> [1] "722 - TRUE"
#> [1] "723 - TRUE"
#> [1] "724 - TRUE"
#> [1] "725 - TRUE"
#> [1] "726 - TRUE"
#> [1] "727 - TRUE"
#> [1] "728 - TRUE"
#> [1] "729 - TRUE"
#> [1] "730 - TRUE"
#> [1] "731 - TRUE"
#> [1] "732 - TRUE"
#> [1] "733 - TRUE"
#> [1] "734 - TRUE"
#> [1] "735 - TRUE"
#> [1] "736 - TRUE"
#> [1] "737 - TRUE"
#> [1] "738 - TRUE"
#> [1] "739 - TRUE"
#> [1] "740 - TRUE"
#> [1] "741 - TRUE"
#> [1] "742 - TRUE"
#> [1] "743 - TRUE"
#> [1] "744 - TRUE"
#> [1] "745 - TRUE"
#> [1] "746 - TRUE"
#> [1] "747 - TRUE"
#> [1] "748 - TRUE"
#> [1] "749 - TRUE"
#> [1] "750 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "751 - TRUE"
#> [1] "752 - TRUE"
#> [1] "753 - TRUE"
#> [1] "754 - TRUE"
#> [1] "755 - TRUE"
#> [1] "756 - TRUE"
#> [1] "757 - TRUE"
#> [1] "758 - TRUE"
#> [1] "759 - TRUE"
#> [1] "760 - TRUE"
#> [1] "761 - TRUE"
#> [1] "762 - TRUE"
#> [1] "763 - TRUE"
#> [1] "764 - TRUE"
#> [1] "765 - TRUE"
#> [1] "766 - TRUE"
#> [1] "767 - TRUE"
#> [1] "768 - TRUE"
#> [1] "769 - TRUE"
#> [1] "770 - TRUE"
#> [1] "771 - TRUE"
#> [1] "772 - TRUE"
#> [1] "773 - TRUE"
#> [1] "774 - TRUE"
#> [1] "775 - TRUE"
#> [1] "776 - TRUE"
#> [1] "777 - TRUE"
#> [1] "778 - TRUE"
#> [1] "779 - TRUE"
#> [1] "780 - TRUE"
#> [1] "781 - TRUE"
#> [1] "782 - TRUE"
#> [1] "783 - TRUE"
#> [1] "784 - TRUE"
#> [1] "785 - TRUE"
#> [1] "786 - TRUE"
#> [1] "787 - TRUE"
#> [1] "788 - TRUE"
#> [1] "789 - TRUE"
#> [1] "790 - TRUE"
#> [1] "791 - TRUE"
#> [1] "792 - TRUE"
#> [1] "793 - TRUE"
#> [1] "794 - TRUE"
#> [1] "795 - TRUE"
#> [1] "796 - TRUE"
#> [1] "797 - TRUE"
#> [1] "798 - TRUE"
#> [1] "799 - TRUE"
#> [1] "800 - TRUE"
#> [1] "801 - TRUE"
#> [1] "802 - TRUE"
#> [1] "803 - TRUE"
#> [1] "804 - TRUE"
#> [1] "805 - TRUE"
#> [1] "806 - TRUE"
#> [1] "807 - TRUE"
#> [1] "808 - TRUE"
#> [1] "809 - TRUE"
#> [1] "810 - TRUE"
#> [1] "811 - TRUE"
#> [1] "812 - TRUE"
#> [1] "813 - TRUE"
#> [1] "814 - TRUE"
#> [1] "815 - TRUE"
#> [1] "816 - TRUE"
#> [1] "817 - TRUE"
#> [1] "818 - TRUE"
#> [1] "819 - TRUE"
#> [1] "820 - TRUE"
#> [1] "821 - TRUE"
#> [1] "822 - TRUE"
#> [1] "823 - TRUE"
#> [1] "824 - TRUE"
#> [1] "825 - TRUE"
#> [1] "826 - TRUE"
#> [1] "827 - TRUE"
#> [1] "828 - TRUE"
#> [1] "829 - TRUE"
#> [1] "830 - TRUE"
#> [1] "831 - TRUE"
#> [1] "832 - TRUE"
#> [1] "833 - TRUE"
#> [1] "834 - TRUE"
#> [1] "835 - TRUE"
#> [1] "836 - TRUE"
#> [1] "837 - TRUE"
#> [1] "838 - TRUE"
#> [1] "839 - TRUE"
#> [1] "840 - TRUE"
#> [1] "841 - TRUE"
#> [1] "842 - TRUE"
#> [1] "843 - TRUE"
#> [1] "844 - TRUE"
#> [1] "845 - TRUE"
#> [1] "846 - TRUE"
#> [1] "847 - TRUE"
#> [1] "848 - TRUE"
#> [1] "849 - TRUE"
#> [1] "850 - TRUE"
#> [1] "851 - TRUE"
#> [1] "852 - TRUE"
#> [1] "853 - TRUE"
#> [1] "854 - TRUE"
#> [1] "855 - TRUE"
#> [1] "856 - TRUE"
#> [1] "857 - TRUE"
#> [1] "858 - TRUE"
#> [1] "859 - TRUE"
#> [1] "860 - TRUE"
#> [1] "861 - TRUE"
#> [1] "862 - TRUE"
#> [1] "863 - TRUE"
#> [1] "864 - TRUE"
#> [1] "865 - TRUE"
#> [1] "866 - TRUE"
#> [1] "867 - TRUE"
#> [1] "868 - TRUE"
#> [1] "869 - TRUE"
#> [1] "870 - TRUE"
#> [1] "871 - TRUE"
#> [1] "872 - TRUE"
#> [1] "873 - TRUE"
#> [1] "874 - TRUE"
#> [1] "875 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "876 - TRUE"
#> [1] "877 - TRUE"
#> [1] "878 - TRUE"
#> [1] "879 - TRUE"
#> [1] "880 - TRUE"
#> [1] "881 - TRUE"
#> [1] "882 - TRUE"
#> [1] "883 - TRUE"
#> [1] "884 - TRUE"
#> [1] "885 - TRUE"
#> [1] "886 - TRUE"
#> [1] "887 - TRUE"
#> [1] "888 - TRUE"
#> [1] "889 - TRUE"
#> [1] "890 - TRUE"
#> [1] "891 - TRUE"
#> [1] "892 - TRUE"
#> [1] "893 - TRUE"
#> [1] "894 - TRUE"
#> [1] "895 - TRUE"
#> [1] "896 - TRUE"
#> [1] "897 - TRUE"
#> [1] "898 - TRUE"
#> [1] "899 - TRUE"
#> [1] "900 - TRUE"
#> [1] "901 - TRUE"
#> [1] "902 - TRUE"
#> [1] "903 - TRUE"
#> [1] "904 - TRUE"
#> [1] "905 - TRUE"
#> [1] "906 - TRUE"
#> [1] "907 - TRUE"
#> [1] "908 - TRUE"
#> [1] "909 - TRUE"
#> [1] "910 - TRUE"
#> [1] "911 - TRUE"
#> [1] "912 - TRUE"
#> [1] "913 - TRUE"
#> [1] "914 - TRUE"
#> [1] "915 - TRUE"
#> [1] "916 - TRUE"
#> [1] "917 - TRUE"
#> [1] "918 - TRUE"
#> [1] "919 - TRUE"
#> [1] "920 - TRUE"
#> [1] "921 - TRUE"
#> [1] "922 - TRUE"
#> [1] "923 - TRUE"
#> [1] "924 - TRUE"
#> [1] "925 - TRUE"
#> [1] "926 - TRUE"
#> [1] "927 - TRUE"
#> [1] "928 - TRUE"
#> [1] "929 - TRUE"
#> [1] "930 - TRUE"
#> [1] "931 - TRUE"
#> [1] "932 - TRUE"
#> [1] "933 - TRUE"
#> [1] "934 - TRUE"
#> [1] "935 - TRUE"
#> [1] "936 - TRUE"
#> [1] "937 - TRUE"
#> [1] "938 - TRUE"
#> [1] "939 - TRUE"
#> [1] "940 - TRUE"
#> [1] "941 - TRUE"
#> [1] "942 - TRUE"
#> [1] "943 - TRUE"
#> [1] "944 - TRUE"
#> [1] "945 - TRUE"
#> [1] "946 - TRUE"
#> [1] "947 - TRUE"
#> [1] "948 - TRUE"
#> [1] "949 - TRUE"
#> [1] "950 - TRUE"
#> [1] "951 - TRUE"
#> [1] "952 - TRUE"
#> [1] "953 - TRUE"
#> [1] "954 - TRUE"
#> [1] "955 - TRUE"
#> [1] "956 - TRUE"
#> [1] "957 - TRUE"
#> [1] "958 - TRUE"
#> [1] "959 - TRUE"
#> [1] "960 - TRUE"
#> [1] "961 - TRUE"
#> [1] "962 - TRUE"
#> [1] "963 - TRUE"
#> [1] "964 - TRUE"
#> [1] "965 - TRUE"
#> [1] "966 - TRUE"
#> [1] "967 - TRUE"
#> [1] "968 - TRUE"
#> [1] "969 - TRUE"
#> [1] "970 - TRUE"
#> [1] "971 - TRUE"
#> [1] "972 - TRUE"
#> [1] "973 - TRUE"
#> [1] "974 - TRUE"
#> [1] "975 - TRUE"
#> [1] "976 - TRUE"
#> [1] "977 - TRUE"
#> [1] "978 - TRUE"
#> [1] "979 - TRUE"
#> [1] "980 - TRUE"
#> [1] "981 - TRUE"
#> [1] "982 - TRUE"
#> [1] "983 - TRUE"
#> [1] "984 - TRUE"
#> [1] "985 - TRUE"
#> [1] "986 - TRUE"
#> [1] "987 - TRUE"
#> [1] "988 - TRUE"
#> [1] "989 - TRUE"
#> [1] "990 - TRUE"
#> [1] "991 - TRUE"
#> [1] "992 - TRUE"
#> [1] "993 - TRUE"
#> [1] "994 - TRUE"
#> [1] "995 - TRUE"
#> [1] "996 - TRUE"
#> [1] "997 - TRUE"
#> [1] "998 - TRUE"
#> [1] "999 - TRUE"
#> [1] "1000 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
con <- dbConnect(RSQLite::SQLite(), dbname = file.path("bd_test.db"))
dbGetQuery(con, "SELECT n_loop FROM tb_teste_iris ORDER BY n_loop")
#> n_loop
#> 1 1
#> 2 2
#> 3 3
#> 4 4
#> 5 5
#> 6 6
#> 7 7
#> 8 8
#> 9 9
#> 10 10
#> 11 11
#> 12 12
#> 13 13
#> 14 14
#> 15 15
#> 16 16
#> 17 17
#> 18 18
#> 19 19
#> 20 20
#> 21 21
#> 22 22
#> 23 23
#> 24 24
#> 25 25
#> 26 26
#> 27 27
#> 28 28
#> 29 29
#> 30 30
#> 31 31
#> 32 32
#> 33 33
#> 34 34
#> 35 35
#> 36 36
#> 37 37
#> 38 38
#> 39 40
#> 40 41
#> 41 42
#> 42 43
#> 43 44
#> 44 45
#> 45 46
#> 46 47
#> 47 48
#> 48 49
#> 49 50
#> 50 51
#> 51 52
#> 52 53
#> 53 54
#> 54 55
#> 55 56
#> 56 57
#> 57 58
#> 58 59
#> 59 60
#> 60 61
#> 61 62
#> 62 63
#> 63 64
#> 64 65
#> 65 66
#> 66 67
#> 67 68
#> 68 69
#> 69 70
#> 70 71
#> 71 72
#> 72 73
#> 73 74
#> 74 75
#> 75 76
#> 76 77
#> 77 78
#> 78 79
#> 79 80
#> 80 81
#> 81 82
#> 82 83
#> 83 84
#> 84 85
#> 85 86
#> 86 87
#> 87 88
#> 88 89
#> 89 90
#> 90 91
#> 91 92
#> 92 93
#> 93 94
#> 94 95
#> 95 96
#> 96 97
#> 97 98
#> 98 99
#> 99 100
#> 100 101
#> 101 102
#> 102 103
#> 103 104
#> 104 105
#> 105 106
#> 106 107
#> 107 108
#> 108 109
#> 109 110
#> 110 111
#> 111 112
#> 112 113
#> 113 114
#> 114 115
#> 115 116
#> 116 117
#> 117 118
#> 118 119
#> 119 120
#> 120 121
#> 121 122
#> 122 123
#> 123 124
#> 124 125
#> 125 126
#> 126 127
#> 127 128
#> 128 129
#> 129 130
#> 130 131
#> 131 132
#> 132 133
#> 133 134
#> 134 135
#> 135 136
#> 136 137
#> 137 138
#> 138 139
#> 139 140
#> 140 141
#> 141 142
#> 142 143
#> 143 144
#> 144 145
#> 145 146
#> 146 147
#> 147 148
#> 148 149
#> 149 150
#> 150 151
#> 151 152
#> 152 153
#> 153 154
#> 154 155
#> 155 156
#> 156 157
#> 157 158
#> 158 159
#> 159 160
#> 160 161
#> 161 162
#> 162 163
#> 163 164
#> 164 165
#> 165 166
#> 166 167
#> 167 168
#> 168 169
#> 169 170
#> 170 171
#> 171 172
#> 172 173
#> 173 174
#> 174 175
#> 175 176
#> 176 177
#> 177 178
#> 178 179
#> 179 180
#> 180 181
#> 181 182
#> 182 183
#> 183 184
#> 184 185
#> 185 186
#> 186 187
#> 187 188
#> 188 189
#> 189 190
#> 190 191
#> 191 192
#> 192 193
#> 193 194
#> 194 195
#> 195 196
#> 196 197
#> 197 198
#> 198 199
#> 199 200
#> 200 201
#> 201 202
#> 202 203
#> 203 204
#> 204 205
#> 205 206
#> 206 207
#> 207 208
#> 208 209
#> 209 210
#> 210 211
#> 211 212
#> 212 213
#> 213 214
#> 214 215
#> 215 216
#> 216 217
#> 217 218
#> 218 219
#> 219 220
#> 220 221
#> 221 222
#> 222 223
#> 223 224
#> 224 225
#> 225 226
#> 226 227
#> 227 228
#> 228 229
#> 229 230
#> 230 231
#> 231 232
#> 232 233
#> 233 234
#> 234 235
#> 235 236
#> 236 237
#> 237 238
#> 238 239
#> 239 240
#> 240 241
#> 241 242
#> 242 243
#> 243 244
#> 244 245
#> 245 246
#> 246 247
#> 247 248
#> 248 249
#> 249 250
#> 250 251
#> 251 252
#> 252 253
#> 253 254
#> 254 255
#> 255 256
#> 256 257
#> 257 258
#> 258 259
#> 259 260
#> 260 261
#> 261 262
#> 262 263
#> 263 264
#> 264 265
#> 265 266
#> 266 267
#> 267 268
#> 268 269
#> 269 270
#> 270 271
#> 271 272
#> 272 273
#> 273 274
#> 274 275
#> 275 276
#> 276 277
#> 277 278
#> 278 279
#> 279 280
#> 280 281
#> 281 282
#> 282 283
#> 283 284
#> 284 285
#> 285 286
#> 286 287
#> 287 288
#> 288 289
#> 289 290
#> 290 291
#> 291 292
#> 292 293
#> 293 294
#> 294 295
#> 295 296
#> 296 297
#> 297 298
#> 298 299
#> 299 300
#> 300 301
#> 301 302
#> 302 303
#> 303 304
#> 304 305
#> 305 306
#> 306 307
#> 307 308
#> 308 310
#> 309 311
#> 310 312
#> 311 313
#> 312 314
#> 313 315
#> 314 316
#> 315 317
#> 316 318
#> 317 319
#> 318 320
#> 319 321
#> 320 322
#> 321 323
#> 322 324
#> 323 325
#> 324 326
#> 325 327
#> 326 328
#> 327 329
#> 328 330
#> 329 331
#> 330 332
#> 331 333
#> 332 334
#> 333 335
#> 334 336
#> 335 337
#> 336 338
#> 337 339
#> 338 340
#> 339 341
#> 340 342
#> 341 343
#> 342 344
#> 343 345
#> 344 346
#> 345 347
#> 346 348
#> 347 349
#> 348 350
#> 349 351
#> 350 352
#> 351 353
#> 352 354
#> 353 355
#> 354 356
#> 355 357
#> 356 358
#> 357 359
#> 358 360
#> 359 361
#> 360 362
#> 361 363
#> 362 364
#> 363 365
#> 364 366
#> 365 367
#> 366 368
#> 367 369
#> 368 370
#> 369 371
#> 370 372
#> 371 373
#> 372 374
#> 373 375
#> 374 376
#> 375 377
#> 376 378
#> 377 379
#> 378 380
#> 379 381
#> 380 382
#> 381 383
#> 382 384
#> 383 385
#> 384 386
#> 385 387
#> 386 388
#> 387 389
#> 388 390
#> 389 391
#> 390 392
#> 391 393
#> 392 394
#> 393 395
#> 394 396
#> 395 397
#> 396 398
#> 397 399
#> 398 400
#> 399 401
#> 400 402
#> 401 403
#> 402 404
#> 403 405
#> 404 406
#> 405 407
#> 406 408
#> 407 409
#> 408 410
#> 409 411
#> 410 412
#> 411 413
#> 412 414
#> 413 415
#> 414 416
#> 415 417
#> 416 418
#> 417 419
#> 418 420
#> 419 421
#> 420 422
#> 421 423
#> 422 424
#> 423 425
#> 424 426
#> 425 427
#> 426 428
#> 427 429
#> 428 430
#> 429 431
#> 430 432
#> 431 433
#> 432 434
#> 433 435
#> 434 436
#> 435 437
#> 436 438
#> 437 439
#> 438 440
#> 439 441
#> 440 442
#> 441 443
#> 442 444
#> 443 445
#> 444 446
#> 445 447
#> 446 448
#> 447 449
#> 448 450
#> 449 451
#> 450 452
#> 451 453
#> 452 454
#> 453 455
#> 454 456
#> 455 457
#> 456 458
#> 457 459
#> 458 460
#> 459 461
#> 460 462
#> 461 463
#> 462 464
#> 463 465
#> 464 466
#> 465 467
#> 466 468
#> 467 469
#> 468 470
#> 469 471
#> 470 472
#> 471 473
#> 472 474
#> 473 476
#> 474 477
#> 475 478
#> 476 479
#> 477 480
#> 478 481
#> 479 482
#> 480 483
#> 481 484
#> 482 485
#> 483 486
#> 484 487
#> 485 488
#> 486 489
#> 487 490
#> 488 491
#> 489 492
#> 490 493
#> 491 494
#> 492 495
#> 493 496
#> 494 497
#> 495 498
#> 496 499
#> 497 500
#> 498 501
#> 499 502
#> 500 503
#> 501 504
#> 502 505
#> 503 506
#> 504 507
#> 505 508
#> 506 509
#> 507 510
#> 508 511
#> 509 512
#> 510 513
#> 511 514
#> 512 515
#> 513 516
#> 514 517
#> 515 518
#> 516 519
#> 517 520
#> 518 521
#> 519 522
#> 520 523
#> 521 524
#> 522 525
#> 523 526
#> 524 527
#> 525 528
#> 526 529
#> 527 530
#> 528 531
#> 529 532
#> 530 533
#> 531 534
#> 532 535
#> 533 536
#> 534 537
#> 535 538
#> 536 539
#> 537 540
#> 538 541
#> 539 542
#> 540 543
#> 541 544
#> 542 545
#> 543 546
#> 544 547
#> 545 548
#> 546 549
#> 547 550
#> 548 551
#> 549 552
#> 550 553
#> 551 554
#> 552 555
#> 553 556
#> 554 557
#> 555 558
#> 556 559
#> 557 560
#> 558 561
#> 559 562
#> 560 563
#> 561 564
#> 562 565
#> 563 566
#> 564 567
#> 565 568
#> 566 569
#> 567 570
#> 568 571
#> 569 572
#> 570 573
#> 571 574
#> 572 575
#> 573 576
#> 574 577
#> 575 578
#> 576 579
#> 577 580
#> 578 581
#> 579 582
#> 580 583
#> 581 584
#> 582 585
#> 583 586
#> 584 587
#> 585 588
#> 586 589
#> 587 590
#> 588 591
#> 589 592
#> 590 593
#> 591 594
#> 592 595
#> 593 596
#> 594 597
#> 595 598
#> 596 599
#> 597 600
#> 598 601
#> 599 602
#> 600 603
#> 601 604
#> 602 605
#> 603 606
#> 604 607
#> 605 608
#> 606 609
#> 607 610
#> 608 611
#> 609 612
#> 610 613
#> 611 614
#> 612 615
#> 613 616
#> 614 617
#> 615 618
#> 616 619
#> 617 620
#> 618 621
#> 619 622
#> 620 623
#> 621 624
#> 622 625
#> 623 626
#> 624 627
#> 625 628
#> 626 629
#> 627 630
#> 628 631
#> 629 632
#> 630 633
#> 631 634
#> 632 635
#> 633 636
#> 634 637
#> 635 638
#> 636 639
#> 637 640
#> 638 641
#> 639 642
#> 640 643
#> 641 644
#> 642 645
#> 643 646
#> 644 647
#> 645 648
#> 646 649
#> 647 650
#> 648 651
#> 649 652
#> 650 653
#> 651 654
#> 652 655
#> 653 656
#> 654 657
#> 655 658
#> 656 659
#> 657 660
#> 658 661
#> 659 662
#> 660 663
#> 661 664
#> 662 665
#> 663 666
#> 664 667
#> 665 668
#> 666 670
#> 667 671
#> 668 672
#> 669 673
#> 670 674
#> 671 675
#> 672 676
#> 673 677
#> 674 678
#> 675 679
#> 676 680
#> 677 681
#> 678 682
#> 679 683
#> 680 684
#> 681 685
#> 682 686
#> 683 687
#> 684 688
#> 685 689
#> 686 690
#> 687 691
#> 688 692
#> 689 693
#> 690 694
#> 691 695
#> 692 696
#> 693 697
#> 694 698
#> 695 699
#> 696 700
#> 697 701
#> 698 702
#> 699 703
#> 700 704
#> 701 705
#> 702 706
#> 703 707
#> 704 708
#> 705 709
#> 706 710
#> 707 711
#> 708 712
#> 709 713
#> 710 714
#> 711 715
#> 712 716
#> 713 717
#> 714 718
#> 715 719
#> 716 720
#> 717 721
#> 718 722
#> 719 723
#> 720 724
#> 721 725
#> 722 726
#> 723 727
#> 724 728
#> 725 729
#> 726 730
#> 727 731
#> 728 732
#> 729 733
#> 730 734
#> 731 735
#> 732 736
#> 733 737
#> 734 738
#> 735 739
#> 736 740
#> 737 741
#> 738 742
#> 739 743
#> 740 744
#> 741 745
#> 742 746
#> 743 747
#> 744 748
#> 745 749
#> 746 750
#> 747 751
#> 748 752
#> 749 753
#> 750 754
#> 751 755
#> 752 756
#> 753 757
#> 754 758
#> 755 759
#> 756 760
#> 757 761
#> 758 762
#> 759 763
#> 760 764
#> 761 765
#> 762 766
#> 763 767
#> 764 768
#> 765 769
#> 766 770
#> 767 771
#> 768 772
#> 769 773
#> 770 774
#> 771 775
#> 772 776
#> 773 777
#> 774 778
#> 775 779
#> 776 780
#> 777 781
#> 778 782
#> 779 783
#> 780 784
#> 781 785
#> 782 786
#> 783 787
#> 784 788
#> 785 789
#> 786 790
#> 787 791
#> 788 792
#> 789 793
#> 790 794
#> 791 795
#> 792 796
#> 793 797
#> 794 798
#> 795 799
#> 796 800
#> 797 801
#> 798 802
#> 799 803
#> 800 804
#> 801 805
#> 802 806
#> 803 807
#> 804 808
#> 805 809
#> 806 810
#> 807 811
#> 808 812
#> 809 813
#> 810 814
#> 811 815
#> 812 816
#> 813 817
#> 814 818
#> 815 819
#> 816 820
#> 817 821
#> 818 822
#> 819 823
#> 820 824
#> 821 825
#> 822 826
#> 823 827
#> 824 828
#> 825 829
#> 826 830
#> 827 831
#> 828 832
#> 829 833
#> 830 834
#> 831 835
#> 832 836
#> 833 837
#> 834 838
#> 835 839
#> 836 840
#> 837 841
#> 838 842
#> 839 843
#> 840 844
#> 841 845
#> 842 846
#> 843 847
#> 844 848
#> 845 849
#> 846 850
#> 847 851
#> 848 852
#> 849 853
#> 850 854
#> 851 855
#> 852 856
#> 853 857
#> 854 858
#> 855 859
#> 856 860
#> 857 861
#> 858 862
#> 859 863
#> 860 864
#> 861 865
#> 862 866
#> 863 867
#> 864 868
#> 865 869
#> 866 870
#> 867 871
#> 868 872
#> 869 873
#> 870 874
#> 871 875
#> 872 876
#> 873 877
#> 874 878
#> 875 879
#> 876 880
#> 877 881
#> 878 882
#> 879 883
#> 880 884
#> 881 885
#> 882 886
#> 883 887
#> 884 888
#> 885 889
#> 886 890
#> 887 891
#> 888 892
#> 889 893
#> 890 894
#> 891 895
#> 892 896
#> 893 897
#> 894 898
#> 895 899
#> 896 900
#> 897 901
#> 898 902
#> 899 903
#> 900 904
#> 901 905
#> 902 906
#> 903 907
#> 904 908
#> 905 909
#> 906 910
#> 907 911
#> 908 912
#> 909 913
#> 910 914
#> 911 915
#> 912 916
#> 913 917
#> 914 918
#> 915 919
#> 916 920
#> 917 921
#> 918 922
#> 919 923
#> 920 924
#> 921 925
#> 922 926
#> 923 927
#> 924 928
#> 925 929
#> 926 930
#> 927 931
#> 928 932
#> 929 933
#> 930 934
#> 931 935
#> 932 936
#> 933 937
#> 934 938
#> 935 939
#> 936 940
#> 937 941
#> 938 942
#> 939 943
#> 940 944
#> 941 945
#> 942 946
#> 943 947
#> 944 948
#> 945 949
#> 946 950
#> 947 951
#> 948 952
#> 949 953
#> 950 954
#> 951 955
#> 952 956
#> 953 957
#> 954 958
#> 955 959
#> 956 960
#> 957 961
#> 958 962
#> 959 963
#> 960 964
#> 961 965
#> 962 966
#> 963 967
#> 964 968
#> 965 969
#> 966 970
#> 967 971
#> 968 972
#> 969 973
#> 970 974
#> 971 975
#> 972 976
#> 973 977
#> 974 978
#> 975 979
#> 976 980
#> 977 981
#> 978 982
#> 979 983
#> 980 984
#> 981 985
#> 982 986
#> 983 987
#> 984 988
#> 985 989
#> 986 990
#> 987 991
#> 988 992
#> 989 993
#> 990 994
#> 991 995
#> 992 996
#> 993 997
#> 994 998
#> 995 999
#> 996 1000
sessionInfo()
#> R version 4.0.3 (2020-10-10)
#> Platform: x86_64-w64-mingw32/x64 (64-bit)
#> Running under: Windows 10 x64 (build 19042)
#>
#> Matrix products: default
#>
#> locale:
#> [1] LC_COLLATE=Portuguese_Brazil.1252 LC_CTYPE=Portuguese_Brazil.1252
#> [3] LC_MONETARY=Portuguese_Brazil.1252 LC_NUMERIC=C
#> [5] LC_TIME=Portuguese_Brazil.1252
#>
#> attached base packages:
#> [1] stats graphics grDevices utils datasets methods base
#>
#> other attached packages:
#> [1] purrr_0.3.4 magrittr_2.0.1 furrr_0.2.1 future_1.21.0 RSQLite_2.2.2
#> [6] DBI_1.1.1
#>
#> loaded via a namespace (and not attached):
#> [1] Rcpp_1.0.6 parallelly_1.23.0 knitr_1.30 bit_4.0.4
#> [5] rlang_0.4.10 stringr_1.4.0 blob_1.2.1 highr_0.8
#> [9] globals_0.14.0 tools_4.0.3 parallel_4.0.3 xfun_0.20
#> [13] ellipsis_0.3.1 htmltools_0.5.1 yaml_2.2.1 bit64_4.0.5
#> [17] digest_0.6.27 vctrs_0.3.6 codetools_0.2-18 memoise_1.1.0
#> [21] evaluate_0.14 rmarkdown_2.6 stringi_1.5.3 compiler_4.0.3
#> [25] listenv_0.8.0 pkgconfig_2.0.3
Created on 2021-01-21 by the reprex package (v0.3.0)
Reprex with RSQLite 2.2.3:
library(DBI)
library(RSQLite)
library(furrr)
#> Carregando pacotes exigidos: future
library(future)
library(magrittr)
library(purrr)
#>
#> Attaching package: 'purrr'
#> The following object is masked from 'package:magrittr':
#>
#> set_names
########################################################
n_teste <- 1:1000
unlink("bd_test.db")
connect_sgbd <- function() {
conexao <- DBI::dbConnect(RSQLite::SQLite(),
dbname = file.path("bd_test.db")
)
return(conexao)
}
teste_write_sqlite <- function(n_teste) {
tb_teste_iris <- iris[1, ] %>%
dplyr::mutate(n_loop = n_teste)
tentativas <- purrr::rate_delay(pause = 2,
max_times = 20
)
insist_execute_sqlite <- purrr::insistently(DBI::dbExecute,
tentativas,
quiet = FALSE
)
insist_dbWriteTable <- purrr::insistently(DBI::dbWriteTable,
tentativas,
quiet = FALSE
)
conn <- connect_sgbd()
on.exit(dbDisconnect(conn))
tryCatch(
{
insist_execute_sqlite(conn, "BEGIN IMMEDIATE TRANSACTION")
# Rollback on failure
on.exit(try(dbExecute(conn, "ROLLBACK TRANSACTION")))
out <- insist_dbWriteTable(conn, "tb_teste_iris", tb_teste_iris, append = TRUE)
dbExecute(conn, "COMMIT TRANSACTION")
# Don't rollback on success
on.exit(NULL)
print(paste(n_teste, "-", out))
},
error = function(e) {
print(paste(n_teste, "-", conditionMessage(e)))
}
)
}
future::plan("multisession",
workers = 8
)
options(future.rng.onMisuse = "ignore")
furrr::future_walk(n_teste, teste_write_sqlite, .progress = TRUE)
#> [1] "1 - TRUE"
#> [1] "2 - TRUE"
#> [1] "3 - TRUE"
#> [1] "4 - TRUE"
#> [1] "5 - TRUE"
#> [1] "6 - TRUE"
#> [1] "7 - TRUE"
#> [1] "8 - TRUE"
#> [1] "9 - TRUE"
#> [1] "10 - TRUE"
#> [1] "11 - TRUE"
#> [1] "12 - TRUE"
#> [1] "13 - TRUE"
#> [1] "14 - TRUE"
#> [1] "15 - TRUE"
#> [1] "16 - TRUE"
#> [1] "17 - TRUE"
#> [1] "18 - TRUE"
#> [1] "19 - TRUE"
#> [1] "20 - TRUE"
#> [1] "21 - TRUE"
#> [1] "22 - TRUE"
#> [1] "23 - TRUE"
#> [1] "24 - TRUE"
#> [1] "25 - TRUE"
#> [1] "26 - TRUE"
#> [1] "27 - TRUE"
#> [1] "28 - TRUE"
#> [1] "29 - TRUE"
#> [1] "30 - TRUE"
#> [1] "31 - TRUE"
#> [1] "32 - TRUE"
#> [1] "33 - TRUE"
#> [1] "34 - TRUE"
#> [1] "35 - TRUE"
#> [1] "36 - TRUE"
#> [1] "37 - TRUE"
#> [1] "38 - TRUE"
#> [1] "39 - TRUE"
#> [1] "40 - TRUE"
#> [1] "41 - TRUE"
#> [1] "42 - TRUE"
#> [1] "43 - TRUE"
#> [1] "44 - TRUE"
#> [1] "45 - TRUE"
#> [1] "46 - TRUE"
#> [1] "47 - TRUE"
#> [1] "48 - TRUE"
#> [1] "49 - TRUE"
#> [1] "50 - TRUE"
#> [1] "51 - TRUE"
#> [1] "52 - TRUE"
#> [1] "53 - database is locked"
#> [1] "54 - TRUE"
#> [1] "55 - TRUE"
#> [1] "56 - TRUE"
#> [1] "57 - TRUE"
#> [1] "58 - TRUE"
#> [1] "59 - TRUE"
#> [1] "60 - TRUE"
#> [1] "61 - TRUE"
#> [1] "62 - TRUE"
#> [1] "63 - TRUE"
#> [1] "64 - TRUE"
#> [1] "65 - TRUE"
#> [1] "66 - TRUE"
#> [1] "67 - TRUE"
#> [1] "68 - TRUE"
#> [1] "69 - TRUE"
#> [1] "70 - TRUE"
#> [1] "71 - TRUE"
#> [1] "72 - TRUE"
#> [1] "73 - TRUE"
#> [1] "74 - TRUE"
#> [1] "75 - TRUE"
#> [1] "76 - TRUE"
#> [1] "77 - TRUE"
#> [1] "78 - TRUE"
#> [1] "79 - TRUE"
#> [1] "80 - TRUE"
#> [1] "81 - TRUE"
#> [1] "82 - TRUE"
#> [1] "83 - TRUE"
#> [1] "84 - TRUE"
#> [1] "85 - TRUE"
#> [1] "86 - TRUE"
#> [1] "87 - TRUE"
#> [1] "88 - TRUE"
#> [1] "89 - TRUE"
#> [1] "90 - TRUE"
#> [1] "91 - TRUE"
#> [1] "92 - TRUE"
#> [1] "93 - TRUE"
#> [1] "94 - TRUE"
#> [1] "95 - TRUE"
#> [1] "96 - TRUE"
#> [1] "97 - TRUE"
#> [1] "98 - TRUE"
#> [1] "99 - TRUE"
#> [1] "100 - TRUE"
#> [1] "101 - TRUE"
#> [1] "102 - TRUE"
#> [1] "103 - TRUE"
#> [1] "104 - TRUE"
#> [1] "105 - TRUE"
#> [1] "106 - TRUE"
#> [1] "107 - TRUE"
#> [1] "108 - TRUE"
#> [1] "109 - TRUE"
#> [1] "110 - TRUE"
#> [1] "111 - TRUE"
#> [1] "112 - TRUE"
#> [1] "113 - TRUE"
#> [1] "114 - TRUE"
#> [1] "115 - TRUE"
#> [1] "116 - TRUE"
#> [1] "117 - TRUE"
#> [1] "118 - TRUE"
#> [1] "119 - TRUE"
#> [1] "120 - TRUE"
#> [1] "121 - TRUE"
#> [1] "122 - TRUE"
#> [1] "123 - TRUE"
#> [1] "124 - TRUE"
#> [1] "125 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "126 - TRUE"
#> [1] "127 - TRUE"
#> [1] "128 - TRUE"
#> [1] "129 - TRUE"
#> [1] "130 - TRUE"
#> [1] "131 - TRUE"
#> [1] "132 - TRUE"
#> [1] "133 - TRUE"
#> [1] "134 - TRUE"
#> [1] "135 - TRUE"
#> [1] "136 - TRUE"
#> [1] "137 - TRUE"
#> [1] "138 - TRUE"
#> [1] "139 - TRUE"
#> [1] "140 - TRUE"
#> [1] "141 - TRUE"
#> [1] "142 - TRUE"
#> [1] "143 - TRUE"
#> [1] "144 - TRUE"
#> [1] "145 - TRUE"
#> [1] "146 - TRUE"
#> [1] "147 - TRUE"
#> [1] "148 - TRUE"
#> [1] "149 - database is locked"
#> [1] "150 - TRUE"
#> [1] "151 - TRUE"
#> [1] "152 - TRUE"
#> [1] "153 - TRUE"
#> [1] "154 - TRUE"
#> [1] "155 - TRUE"
#> [1] "156 - TRUE"
#> [1] "157 - TRUE"
#> [1] "158 - TRUE"
#> [1] "159 - TRUE"
#> [1] "160 - TRUE"
#> [1] "161 - TRUE"
#> [1] "162 - TRUE"
#> [1] "163 - TRUE"
#> [1] "164 - TRUE"
#> [1] "165 - TRUE"
#> [1] "166 - TRUE"
#> [1] "167 - TRUE"
#> [1] "168 - TRUE"
#> [1] "169 - TRUE"
#> [1] "170 - TRUE"
#> [1] "171 - TRUE"
#> [1] "172 - TRUE"
#> [1] "173 - TRUE"
#> [1] "174 - TRUE"
#> [1] "175 - TRUE"
#> [1] "176 - TRUE"
#> [1] "177 - TRUE"
#> [1] "178 - TRUE"
#> [1] "179 - TRUE"
#> [1] "180 - TRUE"
#> [1] "181 - TRUE"
#> [1] "182 - TRUE"
#> [1] "183 - TRUE"
#> [1] "184 - TRUE"
#> [1] "185 - TRUE"
#> [1] "186 - TRUE"
#> [1] "187 - TRUE"
#> [1] "188 - TRUE"
#> [1] "189 - TRUE"
#> [1] "190 - TRUE"
#> [1] "191 - TRUE"
#> [1] "192 - TRUE"
#> [1] "193 - TRUE"
#> [1] "194 - TRUE"
#> [1] "195 - TRUE"
#> [1] "196 - TRUE"
#> [1] "197 - TRUE"
#> [1] "198 - TRUE"
#> [1] "199 - TRUE"
#> [1] "200 - TRUE"
#> [1] "201 - TRUE"
#> [1] "202 - TRUE"
#> [1] "203 - TRUE"
#> [1] "204 - TRUE"
#> [1] "205 - TRUE"
#> [1] "206 - TRUE"
#> [1] "207 - TRUE"
#> [1] "208 - TRUE"
#> [1] "209 - TRUE"
#> [1] "210 - TRUE"
#> [1] "211 - TRUE"
#> [1] "212 - TRUE"
#> [1] "213 - TRUE"
#> [1] "214 - TRUE"
#> [1] "215 - TRUE"
#> [1] "216 - TRUE"
#> [1] "217 - TRUE"
#> [1] "218 - database is locked"
#> [1] "219 - TRUE"
#> [1] "220 - TRUE"
#> [1] "221 - TRUE"
#> [1] "222 - TRUE"
#> [1] "223 - TRUE"
#> [1] "224 - TRUE"
#> [1] "225 - TRUE"
#> [1] "226 - TRUE"
#> [1] "227 - TRUE"
#> [1] "228 - TRUE"
#> [1] "229 - TRUE"
#> [1] "230 - TRUE"
#> [1] "231 - TRUE"
#> [1] "232 - TRUE"
#> [1] "233 - TRUE"
#> [1] "234 - TRUE"
#> [1] "235 - TRUE"
#> [1] "236 - TRUE"
#> [1] "237 - TRUE"
#> [1] "238 - TRUE"
#> [1] "239 - TRUE"
#> [1] "240 - TRUE"
#> [1] "241 - TRUE"
#> [1] "242 - TRUE"
#> [1] "243 - TRUE"
#> [1] "244 - TRUE"
#> [1] "245 - TRUE"
#> [1] "246 - TRUE"
#> [1] "247 - TRUE"
#> [1] "248 - TRUE"
#> [1] "249 - TRUE"
#> [1] "250 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "251 - TRUE"
#> [1] "252 - TRUE"
#> [1] "253 - TRUE"
#> [1] "254 - TRUE"
#> [1] "255 - TRUE"
#> [1] "256 - TRUE"
#> [1] "257 - TRUE"
#> [1] "258 - TRUE"
#> [1] "259 - TRUE"
#> [1] "260 - TRUE"
#> [1] "261 - TRUE"
#> [1] "262 - TRUE"
#> [1] "263 - TRUE"
#> [1] "264 - TRUE"
#> [1] "265 - TRUE"
#> [1] "266 - TRUE"
#> [1] "267 - TRUE"
#> [1] "268 - TRUE"
#> [1] "269 - TRUE"
#> [1] "270 - TRUE"
#> [1] "271 - TRUE"
#> [1] "272 - TRUE"
#> [1] "273 - TRUE"
#> [1] "274 - TRUE"
#> [1] "275 - TRUE"
#> [1] "276 - TRUE"
#> [1] "277 - TRUE"
#> [1] "278 - TRUE"
#> [1] "279 - TRUE"
#> [1] "280 - TRUE"
#> [1] "281 - TRUE"
#> [1] "282 - TRUE"
#> [1] "283 - TRUE"
#> [1] "284 - TRUE"
#> [1] "285 - TRUE"
#> [1] "286 - TRUE"
#> [1] "287 - TRUE"
#> [1] "288 - TRUE"
#> [1] "289 - TRUE"
#> [1] "290 - TRUE"
#> [1] "291 - TRUE"
#> [1] "292 - TRUE"
#> [1] "293 - TRUE"
#> [1] "294 - TRUE"
#> [1] "295 - TRUE"
#> [1] "296 - TRUE"
#> [1] "297 - TRUE"
#> [1] "298 - TRUE"
#> [1] "299 - TRUE"
#> [1] "300 - TRUE"
#> [1] "301 - TRUE"
#> [1] "302 - TRUE"
#> [1] "303 - TRUE"
#> [1] "304 - TRUE"
#> [1] "305 - TRUE"
#> [1] "306 - TRUE"
#> [1] "307 - TRUE"
#> [1] "308 - TRUE"
#> [1] "309 - TRUE"
#> [1] "310 - TRUE"
#> [1] "311 - TRUE"
#> [1] "312 - TRUE"
#> [1] "313 - TRUE"
#> [1] "314 - TRUE"
#> [1] "315 - TRUE"
#> [1] "316 - TRUE"
#> [1] "317 - TRUE"
#> [1] "318 - TRUE"
#> [1] "319 - TRUE"
#> [1] "320 - TRUE"
#> [1] "321 - TRUE"
#> [1] "322 - TRUE"
#> [1] "323 - TRUE"
#> [1] "324 - TRUE"
#> [1] "325 - TRUE"
#> [1] "326 - TRUE"
#> [1] "327 - TRUE"
#> [1] "328 - TRUE"
#> [1] "329 - TRUE"
#> [1] "330 - TRUE"
#> [1] "331 - TRUE"
#> [1] "332 - TRUE"
#> [1] "333 - database is locked"
#> [1] "334 - TRUE"
#> [1] "335 - TRUE"
#> [1] "336 - TRUE"
#> [1] "337 - TRUE"
#> [1] "338 - TRUE"
#> [1] "339 - TRUE"
#> [1] "340 - TRUE"
#> [1] "341 - TRUE"
#> [1] "342 - TRUE"
#> [1] "343 - TRUE"
#> [1] "344 - TRUE"
#> [1] "345 - TRUE"
#> [1] "346 - TRUE"
#> [1] "347 - TRUE"
#> [1] "348 - TRUE"
#> [1] "349 - TRUE"
#> [1] "350 - TRUE"
#> [1] "351 - TRUE"
#> [1] "352 - TRUE"
#> [1] "353 - TRUE"
#> [1] "354 - TRUE"
#> [1] "355 - TRUE"
#> [1] "356 - TRUE"
#> [1] "357 - TRUE"
#> [1] "358 - TRUE"
#> [1] "359 - TRUE"
#> [1] "360 - TRUE"
#> [1] "361 - TRUE"
#> [1] "362 - TRUE"
#> [1] "363 - TRUE"
#> [1] "364 - TRUE"
#> [1] "365 - TRUE"
#> [1] "366 - TRUE"
#> [1] "367 - TRUE"
#> [1] "368 - TRUE"
#> [1] "369 - TRUE"
#> [1] "370 - TRUE"
#> [1] "371 - TRUE"
#> [1] "372 - TRUE"
#> [1] "373 - TRUE"
#> [1] "374 - TRUE"
#> [1] "375 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "376 - TRUE"
#> [1] "377 - TRUE"
#> [1] "378 - TRUE"
#> [1] "379 - TRUE"
#> [1] "380 - TRUE"
#> [1] "381 - TRUE"
#> [1] "382 - TRUE"
#> [1] "383 - TRUE"
#> [1] "384 - TRUE"
#> [1] "385 - TRUE"
#> [1] "386 - TRUE"
#> [1] "387 - TRUE"
#> [1] "388 - TRUE"
#> [1] "389 - TRUE"
#> [1] "390 - TRUE"
#> [1] "391 - TRUE"
#> [1] "392 - TRUE"
#> [1] "393 - TRUE"
#> [1] "394 - TRUE"
#> [1] "395 - TRUE"
#> [1] "396 - TRUE"
#> [1] "397 - TRUE"
#> [1] "398 - TRUE"
#> [1] "399 - TRUE"
#> [1] "400 - TRUE"
#> [1] "401 - TRUE"
#> [1] "402 - TRUE"
#> [1] "403 - TRUE"
#> [1] "404 - TRUE"
#> [1] "405 - TRUE"
#> [1] "406 - TRUE"
#> [1] "407 - TRUE"
#> [1] "408 - TRUE"
#> [1] "409 - TRUE"
#> [1] "410 - TRUE"
#> [1] "411 - TRUE"
#> [1] "412 - TRUE"
#> [1] "413 - TRUE"
#> [1] "414 - TRUE"
#> [1] "415 - TRUE"
#> [1] "416 - TRUE"
#> [1] "417 - TRUE"
#> [1] "418 - TRUE"
#> [1] "419 - TRUE"
#> [1] "420 - TRUE"
#> [1] "421 - TRUE"
#> [1] "422 - TRUE"
#> [1] "423 - TRUE"
#> [1] "424 - TRUE"
#> [1] "425 - TRUE"
#> [1] "426 - TRUE"
#> [1] "427 - TRUE"
#> [1] "428 - TRUE"
#> [1] "429 - TRUE"
#> [1] "430 - TRUE"
#> [1] "431 - TRUE"
#> [1] "432 - TRUE"
#> [1] "433 - TRUE"
#> [1] "434 - TRUE"
#> [1] "435 - TRUE"
#> [1] "436 - TRUE"
#> [1] "437 - TRUE"
#> [1] "438 - TRUE"
#> [1] "439 - TRUE"
#> [1] "440 - TRUE"
#> [1] "441 - TRUE"
#> [1] "442 - TRUE"
#> [1] "443 - TRUE"
#> [1] "444 - TRUE"
#> [1] "445 - TRUE"
#> [1] "446 - TRUE"
#> [1] "447 - TRUE"
#> [1] "448 - TRUE"
#> [1] "449 - TRUE"
#> [1] "450 - TRUE"
#> [1] "451 - database is locked"
#> [1] "452 - TRUE"
#> [1] "453 - TRUE"
#> [1] "454 - TRUE"
#> [1] "455 - TRUE"
#> [1] "456 - TRUE"
#> [1] "457 - TRUE"
#> [1] "458 - TRUE"
#> [1] "459 - TRUE"
#> [1] "460 - TRUE"
#> [1] "461 - TRUE"
#> [1] "462 - TRUE"
#> [1] "463 - TRUE"
#> [1] "464 - TRUE"
#> [1] "465 - TRUE"
#> [1] "466 - TRUE"
#> [1] "467 - TRUE"
#> [1] "468 - TRUE"
#> [1] "469 - TRUE"
#> [1] "470 - TRUE"
#> [1] "471 - TRUE"
#> [1] "472 - TRUE"
#> [1] "473 - TRUE"
#> [1] "474 - TRUE"
#> [1] "475 - TRUE"
#> [1] "476 - TRUE"
#> [1] "477 - TRUE"
#> [1] "478 - TRUE"
#> [1] "479 - TRUE"
#> [1] "480 - TRUE"
#> [1] "481 - TRUE"
#> [1] "482 - TRUE"
#> [1] "483 - TRUE"
#> [1] "484 - TRUE"
#> [1] "485 - TRUE"
#> [1] "486 - TRUE"
#> [1] "487 - TRUE"
#> [1] "488 - TRUE"
#> [1] "489 - TRUE"
#> [1] "490 - TRUE"
#> [1] "491 - TRUE"
#> [1] "492 - TRUE"
#> [1] "493 - TRUE"
#> [1] "494 - TRUE"
#> [1] "495 - TRUE"
#> [1] "496 - TRUE"
#> [1] "497 - TRUE"
#> [1] "498 - TRUE"
#> [1] "499 - TRUE"
#> [1] "500 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "501 - TRUE"
#> [1] "502 - TRUE"
#> [1] "503 - TRUE"
#> [1] "504 - TRUE"
#> [1] "505 - TRUE"
#> [1] "506 - TRUE"
#> [1] "507 - TRUE"
#> [1] "508 - TRUE"
#> [1] "509 - TRUE"
#> [1] "510 - TRUE"
#> [1] "511 - TRUE"
#> [1] "512 - TRUE"
#> [1] "513 - TRUE"
#> [1] "514 - TRUE"
#> [1] "515 - TRUE"
#> [1] "516 - TRUE"
#> [1] "517 - TRUE"
#> [1] "518 - TRUE"
#> [1] "519 - TRUE"
#> [1] "520 - database is locked"
#> [1] "521 - TRUE"
#> [1] "522 - TRUE"
#> [1] "523 - TRUE"
#> [1] "524 - TRUE"
#> [1] "525 - TRUE"
#> [1] "526 - TRUE"
#> [1] "527 - TRUE"
#> [1] "528 - TRUE"
#> [1] "529 - TRUE"
#> [1] "530 - TRUE"
#> [1] "531 - TRUE"
#> [1] "532 - TRUE"
#> [1] "533 - TRUE"
#> [1] "534 - TRUE"
#> [1] "535 - TRUE"
#> [1] "536 - TRUE"
#> [1] "537 - TRUE"
#> [1] "538 - TRUE"
#> [1] "539 - TRUE"
#> [1] "540 - TRUE"
#> [1] "541 - TRUE"
#> [1] "542 - TRUE"
#> [1] "543 - TRUE"
#> [1] "544 - TRUE"
#> [1] "545 - TRUE"
#> [1] "546 - TRUE"
#> [1] "547 - TRUE"
#> [1] "548 - TRUE"
#> [1] "549 - TRUE"
#> [1] "550 - TRUE"
#> [1] "551 - TRUE"
#> [1] "552 - TRUE"
#> [1] "553 - TRUE"
#> [1] "554 - TRUE"
#> [1] "555 - TRUE"
#> [1] "556 - TRUE"
#> [1] "557 - TRUE"
#> [1] "558 - TRUE"
#> [1] "559 - TRUE"
#> [1] "560 - TRUE"
#> [1] "561 - TRUE"
#> [1] "562 - TRUE"
#> [1] "563 - TRUE"
#> [1] "564 - TRUE"
#> [1] "565 - TRUE"
#> [1] "566 - TRUE"
#> [1] "567 - TRUE"
#> [1] "568 - TRUE"
#> [1] "569 - TRUE"
#> [1] "570 - TRUE"
#> [1] "571 - TRUE"
#> [1] "572 - TRUE"
#> [1] "573 - TRUE"
#> [1] "574 - TRUE"
#> [1] "575 - TRUE"
#> [1] "576 - TRUE"
#> [1] "577 - TRUE"
#> [1] "578 - TRUE"
#> [1] "579 - TRUE"
#> [1] "580 - TRUE"
#> [1] "581 - TRUE"
#> [1] "582 - TRUE"
#> [1] "583 - TRUE"
#> [1] "584 - TRUE"
#> [1] "585 - TRUE"
#> [1] "586 - TRUE"
#> [1] "587 - TRUE"
#> [1] "588 - TRUE"
#> [1] "589 - TRUE"
#> [1] "590 - TRUE"
#> [1] "591 - TRUE"
#> [1] "592 - TRUE"
#> [1] "593 - TRUE"
#> [1] "594 - TRUE"
#> [1] "595 - TRUE"
#> [1] "596 - TRUE"
#> [1] "597 - TRUE"
#> [1] "598 - TRUE"
#> [1] "599 - TRUE"
#> [1] "600 - TRUE"
#> [1] "601 - TRUE"
#> [1] "602 - TRUE"
#> [1] "603 - TRUE"
#> [1] "604 - TRUE"
#> [1] "605 - TRUE"
#> [1] "606 - TRUE"
#> [1] "607 - TRUE"
#> [1] "608 - TRUE"
#> [1] "609 - TRUE"
#> [1] "610 - TRUE"
#> [1] "611 - TRUE"
#> [1] "612 - TRUE"
#> [1] "613 - TRUE"
#> [1] "614 - TRUE"
#> [1] "615 - TRUE"
#> [1] "616 - TRUE"
#> [1] "617 - TRUE"
#> [1] "618 - TRUE"
#> [1] "619 - TRUE"
#> [1] "620 - TRUE"
#> [1] "621 - TRUE"
#> [1] "622 - TRUE"
#> [1] "623 - TRUE"
#> [1] "624 - TRUE"
#> [1] "625 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "626 - TRUE"
#> [1] "627 - TRUE"
#> [1] "628 - TRUE"
#> [1] "629 - TRUE"
#> [1] "630 - TRUE"
#> [1] "631 - TRUE"
#> [1] "632 - TRUE"
#> [1] "633 - TRUE"
#> [1] "634 - TRUE"
#> [1] "635 - TRUE"
#> [1] "636 - TRUE"
#> [1] "637 - TRUE"
#> [1] "638 - TRUE"
#> [1] "639 - TRUE"
#> [1] "640 - TRUE"
#> [1] "641 - TRUE"
#> [1] "642 - TRUE"
#> [1] "643 - TRUE"
#> [1] "644 - TRUE"
#> [1] "645 - TRUE"
#> [1] "646 - TRUE"
#> [1] "647 - TRUE"
#> [1] "648 - TRUE"
#> [1] "649 - TRUE"
#> [1] "650 - TRUE"
#> [1] "651 - TRUE"
#> [1] "652 - TRUE"
#> [1] "653 - TRUE"
#> [1] "654 - TRUE"
#> [1] "655 - TRUE"
#> [1] "656 - TRUE"
#> [1] "657 - TRUE"
#> [1] "658 - TRUE"
#> [1] "659 - TRUE"
#> [1] "660 - TRUE"
#> [1] "661 - TRUE"
#> [1] "662 - TRUE"
#> [1] "663 - TRUE"
#> [1] "664 - TRUE"
#> [1] "665 - TRUE"
#> [1] "666 - TRUE"
#> [1] "667 - TRUE"
#> [1] "668 - TRUE"
#> [1] "669 - TRUE"
#> [1] "670 - TRUE"
#> [1] "671 - TRUE"
#> [1] "672 - TRUE"
#> [1] "673 - TRUE"
#> [1] "674 - TRUE"
#> [1] "675 - TRUE"
#> [1] "676 - TRUE"
#> [1] "677 - TRUE"
#> [1] "678 - TRUE"
#> [1] "679 - TRUE"
#> [1] "680 - TRUE"
#> [1] "681 - TRUE"
#> [1] "682 - TRUE"
#> [1] "683 - TRUE"
#> [1] "684 - TRUE"
#> [1] "685 - TRUE"
#> [1] "686 - TRUE"
#> [1] "687 - TRUE"
#> [1] "688 - TRUE"
#> [1] "689 - TRUE"
#> [1] "690 - TRUE"
#> [1] "691 - TRUE"
#> [1] "692 - TRUE"
#> [1] "693 - TRUE"
#> [1] "694 - TRUE"
#> [1] "695 - TRUE"
#> [1] "696 - TRUE"
#> [1] "697 - TRUE"
#> [1] "698 - TRUE"
#> [1] "699 - TRUE"
#> [1] "700 - TRUE"
#> [1] "701 - TRUE"
#> [1] "702 - TRUE"
#> [1] "703 - TRUE"
#> [1] "704 - TRUE"
#> [1] "705 - TRUE"
#> [1] "706 - TRUE"
#> [1] "707 - TRUE"
#> [1] "708 - TRUE"
#> [1] "709 - TRUE"
#> [1] "710 - TRUE"
#> [1] "711 - TRUE"
#> [1] "712 - TRUE"
#> [1] "713 - TRUE"
#> [1] "714 - TRUE"
#> [1] "715 - TRUE"
#> [1] "716 - TRUE"
#> [1] "717 - TRUE"
#> [1] "718 - TRUE"
#> [1] "719 - TRUE"
#> [1] "720 - TRUE"
#> [1] "721 - TRUE"
#> [1] "722 - TRUE"
#> [1] "723 - TRUE"
#> [1] "724 - TRUE"
#> [1] "725 - TRUE"
#> [1] "726 - TRUE"
#> [1] "727 - TRUE"
#> [1] "728 - TRUE"
#> [1] "729 - TRUE"
#> [1] "730 - TRUE"
#> [1] "731 - TRUE"
#> [1] "732 - TRUE"
#> [1] "733 - TRUE"
#> [1] "734 - TRUE"
#> [1] "735 - TRUE"
#> [1] "736 - TRUE"
#> [1] "737 - TRUE"
#> [1] "738 - TRUE"
#> [1] "739 - TRUE"
#> [1] "740 - TRUE"
#> [1] "741 - TRUE"
#> [1] "742 - TRUE"
#> [1] "743 - TRUE"
#> [1] "744 - TRUE"
#> [1] "745 - TRUE"
#> [1] "746 - TRUE"
#> [1] "747 - TRUE"
#> [1] "748 - TRUE"
#> [1] "749 - TRUE"
#> [1] "750 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "751 - TRUE"
#> [1] "752 - TRUE"
#> [1] "753 - TRUE"
#> [1] "754 - TRUE"
#> [1] "755 - TRUE"
#> [1] "756 - TRUE"
#> [1] "757 - TRUE"
#> [1] "758 - TRUE"
#> [1] "759 - TRUE"
#> [1] "760 - TRUE"
#> [1] "761 - TRUE"
#> [1] "762 - TRUE"
#> [1] "763 - TRUE"
#> [1] "764 - TRUE"
#> [1] "765 - TRUE"
#> [1] "766 - TRUE"
#> [1] "767 - TRUE"
#> [1] "768 - TRUE"
#> [1] "769 - TRUE"
#> [1] "770 - TRUE"
#> [1] "771 - TRUE"
#> [1] "772 - TRUE"
#> [1] "773 - TRUE"
#> [1] "774 - TRUE"
#> [1] "775 - TRUE"
#> [1] "776 - TRUE"
#> [1] "777 - TRUE"
#> [1] "778 - TRUE"
#> [1] "779 - TRUE"
#> [1] "780 - TRUE"
#> [1] "781 - TRUE"
#> [1] "782 - TRUE"
#> [1] "783 - TRUE"
#> [1] "784 - TRUE"
#> [1] "785 - TRUE"
#> [1] "786 - TRUE"
#> [1] "787 - TRUE"
#> [1] "788 - TRUE"
#> [1] "789 - TRUE"
#> [1] "790 - TRUE"
#> [1] "791 - TRUE"
#> [1] "792 - TRUE"
#> [1] "793 - TRUE"
#> [1] "794 - TRUE"
#> [1] "795 - TRUE"
#> [1] "796 - TRUE"
#> [1] "797 - TRUE"
#> [1] "798 - TRUE"
#> [1] "799 - TRUE"
#> [1] "800 - TRUE"
#> [1] "801 - TRUE"
#> [1] "802 - TRUE"
#> [1] "803 - TRUE"
#> [1] "804 - TRUE"
#> [1] "805 - TRUE"
#> [1] "806 - TRUE"
#> [1] "807 - TRUE"
#> [1] "808 - TRUE"
#> [1] "809 - TRUE"
#> [1] "810 - TRUE"
#> [1] "811 - TRUE"
#> [1] "812 - TRUE"
#> [1] "813 - TRUE"
#> [1] "814 - TRUE"
#> [1] "815 - TRUE"
#> [1] "816 - TRUE"
#> [1] "817 - TRUE"
#> [1] "818 - TRUE"
#> [1] "819 - TRUE"
#> [1] "820 - TRUE"
#> [1] "821 - TRUE"
#> [1] "822 - TRUE"
#> [1] "823 - TRUE"
#> [1] "824 - TRUE"
#> [1] "825 - TRUE"
#> [1] "826 - TRUE"
#> [1] "827 - TRUE"
#> [1] "828 - TRUE"
#> [1] "829 - TRUE"
#> [1] "830 - TRUE"
#> [1] "831 - TRUE"
#> [1] "832 - TRUE"
#> [1] "833 - TRUE"
#> [1] "834 - TRUE"
#> [1] "835 - TRUE"
#> [1] "836 - TRUE"
#> [1] "837 - TRUE"
#> [1] "838 - TRUE"
#> [1] "839 - TRUE"
#> [1] "840 - TRUE"
#> [1] "841 - TRUE"
#> [1] "842 - TRUE"
#> [1] "843 - TRUE"
#> [1] "844 - TRUE"
#> [1] "845 - TRUE"
#> [1] "846 - TRUE"
#> [1] "847 - TRUE"
#> [1] "848 - TRUE"
#> [1] "849 - TRUE"
#> [1] "850 - TRUE"
#> [1] "851 - TRUE"
#> [1] "852 - TRUE"
#> [1] "853 - TRUE"
#> [1] "854 - TRUE"
#> [1] "855 - TRUE"
#> [1] "856 - TRUE"
#> [1] "857 - TRUE"
#> [1] "858 - TRUE"
#> [1] "859 - TRUE"
#> [1] "860 - TRUE"
#> [1] "861 - TRUE"
#> [1] "862 - TRUE"
#> [1] "863 - TRUE"
#> [1] "864 - TRUE"
#> [1] "865 - TRUE"
#> [1] "866 - TRUE"
#> [1] "867 - TRUE"
#> [1] "868 - TRUE"
#> [1] "869 - TRUE"
#> [1] "870 - TRUE"
#> [1] "871 - TRUE"
#> [1] "872 - TRUE"
#> [1] "873 - TRUE"
#> [1] "874 - TRUE"
#> [1] "875 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> [1] "876 - TRUE"
#> [1] "877 - TRUE"
#> [1] "878 - TRUE"
#> [1] "879 - TRUE"
#> [1] "880 - TRUE"
#> [1] "881 - TRUE"
#> [1] "882 - TRUE"
#> [1] "883 - TRUE"
#> [1] "884 - TRUE"
#> [1] "885 - TRUE"
#> [1] "886 - TRUE"
#> [1] "887 - TRUE"
#> [1] "888 - TRUE"
#> [1] "889 - TRUE"
#> [1] "890 - TRUE"
#> [1] "891 - TRUE"
#> [1] "892 - TRUE"
#> [1] "893 - TRUE"
#> [1] "894 - TRUE"
#> [1] "895 - TRUE"
#> [1] "896 - TRUE"
#> [1] "897 - TRUE"
#> [1] "898 - TRUE"
#> [1] "899 - TRUE"
#> [1] "900 - TRUE"
#> [1] "901 - TRUE"
#> [1] "902 - TRUE"
#> [1] "903 - TRUE"
#> [1] "904 - TRUE"
#> [1] "905 - TRUE"
#> [1] "906 - TRUE"
#> [1] "907 - TRUE"
#> [1] "908 - TRUE"
#> [1] "909 - TRUE"
#> [1] "910 - TRUE"
#> [1] "911 - TRUE"
#> [1] "912 - TRUE"
#> [1] "913 - TRUE"
#> [1] "914 - TRUE"
#> [1] "915 - TRUE"
#> [1] "916 - TRUE"
#> [1] "917 - TRUE"
#> [1] "918 - TRUE"
#> [1] "919 - TRUE"
#> [1] "920 - TRUE"
#> [1] "921 - TRUE"
#> [1] "922 - TRUE"
#> [1] "923 - TRUE"
#> [1] "924 - TRUE"
#> [1] "925 - TRUE"
#> [1] "926 - TRUE"
#> [1] "927 - TRUE"
#> [1] "928 - TRUE"
#> [1] "929 - TRUE"
#> [1] "930 - TRUE"
#> [1] "931 - TRUE"
#> [1] "932 - TRUE"
#> [1] "933 - TRUE"
#> [1] "934 - TRUE"
#> [1] "935 - TRUE"
#> [1] "936 - TRUE"
#> [1] "937 - TRUE"
#> [1] "938 - TRUE"
#> [1] "939 - TRUE"
#> [1] "940 - TRUE"
#> [1] "941 - TRUE"
#> [1] "942 - TRUE"
#> [1] "943 - TRUE"
#> [1] "944 - TRUE"
#> [1] "945 - TRUE"
#> [1] "946 - TRUE"
#> [1] "947 - TRUE"
#> [1] "948 - TRUE"
#> [1] "949 - TRUE"
#> [1] "950 - TRUE"
#> [1] "951 - TRUE"
#> [1] "952 - TRUE"
#> [1] "953 - TRUE"
#> [1] "954 - TRUE"
#> [1] "955 - TRUE"
#> [1] "956 - TRUE"
#> [1] "957 - TRUE"
#> [1] "958 - TRUE"
#> [1] "959 - TRUE"
#> [1] "960 - TRUE"
#> [1] "961 - TRUE"
#> [1] "962 - TRUE"
#> [1] "963 - TRUE"
#> [1] "964 - TRUE"
#> [1] "965 - TRUE"
#> [1] "966 - TRUE"
#> [1] "967 - TRUE"
#> [1] "968 - TRUE"
#> [1] "969 - TRUE"
#> [1] "970 - TRUE"
#> [1] "971 - TRUE"
#> [1] "972 - TRUE"
#> [1] "973 - TRUE"
#> [1] "974 - TRUE"
#> [1] "975 - TRUE"
#> [1] "976 - TRUE"
#> [1] "977 - TRUE"
#> [1] "978 - TRUE"
#> [1] "979 - TRUE"
#> [1] "980 - TRUE"
#> [1] "981 - TRUE"
#> [1] "982 - TRUE"
#> [1] "983 - TRUE"
#> [1] "984 - TRUE"
#> [1] "985 - TRUE"
#> [1] "986 - TRUE"
#> [1] "987 - TRUE"
#> [1] "988 - TRUE"
#> [1] "989 - TRUE"
#> [1] "990 - TRUE"
#> [1] "991 - TRUE"
#> [1] "992 - TRUE"
#> [1] "993 - TRUE"
#> [1] "994 - TRUE"
#> [1] "995 - TRUE"
#> [1] "996 - TRUE"
#> [1] "997 - TRUE"
#> [1] "998 - TRUE"
#> [1] "999 - TRUE"
#> [1] "1000 - TRUE"
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
#> Error: database is locked
#> Retrying in 2 seconds.
########################################################
con <- dbConnect(RSQLite::SQLite(), dbname = file.path("bd_test.db"))
dbGetQuery(con, "SELECT n_loop FROM tb_teste_iris ORDER BY n_loop")
#> n_loop
#> 1 1
#> 2 2
#> 3 3
#> 4 4
#> 5 5
#> 6 6
#> 7 7
#> 8 8
#> 9 9
#> 10 10
#> 11 11
#> 12 12
#> 13 13
#> 14 14
#> 15 15
#> 16 16
#> 17 17
#> 18 18
#> 19 19
#> 20 20
#> 21 21
#> 22 22
#> 23 23
#> 24 24
#> 25 25
#> 26 26
#> 27 27
#> 28 28
#> 29 29
#> 30 30
#> 31 31
#> 32 32
#> 33 33
#> 34 34
#> 35 35
#> 36 36
#> 37 37
#> 38 38
#> 39 39
#> 40 40
#> 41 41
#> 42 42
#> 43 43
#> 44 44
#> 45 45
#> 46 46
#> 47 47
#> 48 48
#> 49 49
#> 50 50
#> 51 51
#> 52 52
#> 53 54
#> 54 55
#> 55 56
#> 56 57
#> 57 58
#> 58 59
#> 59 60
#> 60 61
#> 61 62
#> 62 63
#> 63 64
#> 64 65
#> 65 66
#> 66 67
#> 67 68
#> 68 69
#> 69 70
#> 70 71
#> 71 72
#> 72 73
#> 73 74
#> 74 75
#> 75 76
#> 76 77
#> 77 78
#> 78 79
#> 79 80
#> 80 81
#> 81 82
#> 82 83
#> 83 84
#> 84 85
#> 85 86
#> 86 87
#> 87 88
#> 88 89
#> 89 90
#> 90 91
#> 91 92
#> 92 93
#> 93 94
#> 94 95
#> 95 96
#> 96 97
#> 97 98
#> 98 99
#> 99 100
#> 100 101
#> 101 102
#> 102 103
#> 103 104
#> 104 105
#> 105 106
#> 106 107
#> 107 108
#> 108 109
#> 109 110
#> 110 111
#> 111 112
#> 112 113
#> 113 114
#> 114 115
#> 115 116
#> 116 117
#> 117 118
#> 118 119
#> 119 120
#> 120 121
#> 121 122
#> 122 123
#> 123 124
#> 124 125
#> 125 126
#> 126 127
#> 127 128
#> 128 129
#> 129 130
#> 130 131
#> 131 132
#> 132 133
#> 133 134
#> 134 135
#> 135 136
#> 136 137
#> 137 138
#> 138 139
#> 139 140
#> 140 141
#> 141 142
#> 142 143
#> 143 144
#> 144 145
#> 145 146
#> 146 147
#> 147 148
#> 148 150
#> 149 151
#> 150 152
#> 151 153
#> 152 154
#> 153 155
#> 154 156
#> 155 157
#> 156 158
#> 157 159
#> 158 160
#> 159 161
#> 160 162
#> 161 163
#> 162 164
#> 163 165
#> 164 166
#> 165 167
#> 166 168
#> 167 169
#> 168 170
#> 169 171
#> 170 172
#> 171 173
#> 172 174
#> 173 175
#> 174 176
#> 175 177
#> 176 178
#> 177 179
#> 178 180
#> 179 181
#> 180 182
#> 181 183
#> 182 184
#> 183 185
#> 184 186
#> 185 187
#> 186 188
#> 187 189
#> 188 190
#> 189 191
#> 190 192
#> 191 193
#> 192 194
#> 193 195
#> 194 196
#> 195 197
#> 196 198
#> 197 199
#> 198 200
#> 199 201
#> 200 202
#> 201 203
#> 202 204
#> 203 205
#> 204 206
#> 205 207
#> 206 208
#> 207 209
#> 208 210
#> 209 211
#> 210 212
#> 211 213
#> 212 214
#> 213 215
#> 214 216
#> 215 217
#> 216 219
#> 217 220
#> 218 221
#> 219 222
#> 220 223
#> 221 224
#> 222 225
#> 223 226
#> 224 227
#> 225 228
#> 226 229
#> 227 230
#> 228 231
#> 229 232
#> 230 233
#> 231 234
#> 232 235
#> 233 236
#> 234 237
#> 235 238
#> 236 239
#> 237 240
#> 238 241
#> 239 242
#> 240 243
#> 241 244
#> 242 245
#> 243 246
#> 244 247
#> 245 248
#> 246 249
#> 247 250
#> 248 251
#> 249 252
#> 250 253
#> 251 254
#> 252 255
#> 253 256
#> 254 257
#> 255 258
#> 256 259
#> 257 260
#> 258 261
#> 259 262
#> 260 263
#> 261 264
#> 262 265
#> 263 266
#> 264 267
#> 265 268
#> 266 269
#> 267 270
#> 268 271
#> 269 272
#> 270 273
#> 271 274
#> 272 275
#> 273 276
#> 274 277
#> 275 278
#> 276 279
#> 277 280
#> 278 281
#> 279 282
#> 280 283
#> 281 284
#> 282 285
#> 283 286
#> 284 287
#> 285 288
#> 286 289
#> 287 290
#> 288 291
#> 289 292
#> 290 293
#> 291 294
#> 292 295
#> 293 296
#> 294 297
#> 295 298
#> 296 299
#> 297 300
#> 298 301
#> 299 302
#> 300 303
#> 301 304
#> 302 305
#> 303 306
#> 304 307
#> 305 308
#> 306 309
#> 307 310
#> 308 311
#> 309 312
#> 310 313
#> 311 314
#> 312 315
#> 313 316
#> 314 317
#> 315 318
#> 316 319
#> 317 320
#> 318 321
#> 319 322
#> 320 323
#> 321 324
#> 322 325
#> 323 326
#> 324 327
#> 325 328
#> 326 329
#> 327 330
#> 328 331
#> 329 332
#> 330 334
#> 331 335
#> 332 336
#> 333 337
#> 334 338
#> 335 339
#> 336 340
#> 337 341
#> 338 342
#> 339 343
#> 340 344
#> 341 345
#> 342 346
#> 343 347
#> 344 348
#> 345 349
#> 346 350
#> 347 351
#> 348 352
#> 349 353
#> 350 354
#> 351 355
#> 352 356
#> 353 357
#> 354 358
#> 355 359
#> 356 360
#> 357 361
#> 358 362
#> 359 363
#> 360 364
#> 361 365
#> 362 366
#> 363 367
#> 364 368
#> 365 369
#> 366 370
#> 367 371
#> 368 372
#> 369 373
#> 370 374
#> 371 375
#> 372 376
#> 373 377
#> 374 378
#> 375 379
#> 376 380
#> 377 381
#> 378 382
#> 379 383
#> 380 384
#> 381 385
#> 382 386
#> 383 387
#> 384 388
#> 385 389
#> 386 390
#> 387 391
#> 388 392
#> 389 393
#> 390 394
#> 391 395
#> 392 396
#> 393 397
#> 394 398
#> 395 399
#> 396 400
#> 397 401
#> 398 402
#> 399 403
#> 400 404
#> 401 405
#> 402 406
#> 403 407
#> 404 408
#> 405 409
#> 406 410
#> 407 411
#> 408 412
#> 409 413
#> 410 414
#> 411 415
#> 412 416
#> 413 417
#> 414 418
#> 415 419
#> 416 420
#> 417 421
#> 418 422
#> 419 423
#> 420 424
#> 421 425
#> 422 426
#> 423 427
#> 424 428
#> 425 429
#> 426 430
#> 427 431
#> 428 432
#> 429 433
#> 430 434
#> 431 435
#> 432 436
#> 433 437
#> 434 438
#> 435 439
#> 436 440
#> 437 441
#> 438 442
#> 439 443
#> 440 444
#> 441 445
#> 442 446
#> 443 447
#> 444 448
#> 445 449
#> 446 450
#> 447 452
#> 448 453
#> 449 454
#> 450 455
#> 451 456
#> 452 457
#> 453 458
#> 454 459
#> 455 460
#> 456 461
#> 457 462
#> 458 463
#> 459 464
#> 460 465
#> 461 466
#> 462 467
#> 463 468
#> 464 469
#> 465 470
#> 466 471
#> 467 472
#> 468 473
#> 469 474
#> 470 475
#> 471 476
#> 472 477
#> 473 478
#> 474 479
#> 475 480
#> 476 481
#> 477 482
#> 478 483
#> 479 484
#> 480 485
#> 481 486
#> 482 487
#> 483 488
#> 484 489
#> 485 490
#> 486 491
#> 487 492
#> 488 493
#> 489 494
#> 490 495
#> 491 496
#> 492 497
#> 493 498
#> 494 499
#> 495 500
#> 496 501
#> 497 502
#> 498 503
#> 499 504
#> 500 505
#> 501 506
#> 502 507
#> 503 508
#> 504 509
#> 505 510
#> 506 511
#> 507 512
#> 508 513
#> 509 514
#> 510 515
#> 511 516
#> 512 517
#> 513 518
#> 514 519
#> 515 521
#> 516 522
#> 517 523
#> 518 524
#> 519 525
#> 520 526
#> 521 527
#> 522 528
#> 523 529
#> 524 530
#> 525 531
#> 526 532
#> 527 533
#> 528 534
#> 529 535
#> 530 536
#> 531 537
#> 532 538
#> 533 539
#> 534 540
#> 535 541
#> 536 542
#> 537 543
#> 538 544
#> 539 545
#> 540 546
#> 541 547
#> 542 548
#> 543 549
#> 544 550
#> 545 551
#> 546 552
#> 547 553
#> 548 554
#> 549 555
#> 550 556
#> 551 557
#> 552 558
#> 553 559
#> 554 560
#> 555 561
#> 556 562
#> 557 563
#> 558 564
#> 559 565
#> 560 566
#> 561 567
#> 562 568
#> 563 569
#> 564 570
#> 565 571
#> 566 572
#> 567 573
#> 568 574
#> 569 575
#> 570 576
#> 571 577
#> 572 578
#> 573 579
#> 574 580
#> 575 581
#> 576 582
#> 577 583
#> 578 584
#> 579 585
#> 580 586
#> 581 587
#> 582 588
#> 583 589
#> 584 590
#> 585 591
#> 586 592
#> 587 593
#> 588 594
#> 589 595
#> 590 596
#> 591 597
#> 592 598
#> 593 599
#> 594 600
#> 595 601
#> 596 602
#> 597 603
#> 598 604
#> 599 605
#> 600 606
#> 601 607
#> 602 608
#> 603 609
#> 604 610
#> 605 611
#> 606 612
#> 607 613
#> 608 614
#> 609 615
#> 610 616
#> 611 617
#> 612 618
#> 613 619
#> 614 620
#> 615 621
#> 616 622
#> 617 623
#> 618 624
#> 619 625
#> 620 626
#> 621 627
#> 622 628
#> 623 629
#> 624 630
#> 625 631
#> 626 632
#> 627 633
#> 628 634
#> 629 635
#> 630 636
#> 631 637
#> 632 638
#> 633 639
#> 634 640
#> 635 641
#> 636 642
#> 637 643
#> 638 644
#> 639 645
#> 640 646
#> 641 647
#> 642 648
#> 643 649
#> 644 650
#> 645 651
#> 646 652
#> 647 653
#> 648 654
#> 649 655
#> 650 656
#> 651 657
#> 652 658
#> 653 659
#> 654 660
#> 655 661
#> 656 662
#> 657 663
#> 658 664
#> 659 665
#> 660 666
#> 661 667
#> 662 668
#> 663 669
#> 664 670
#> 665 671
#> 666 672
#> 667 673
#> 668 674
#> 669 675
#> 670 676
#> 671 677
#> 672 678
#> 673 679
#> 674 680
#> 675 681
#> 676 682
#> 677 683
#> 678 684
#> 679 685
#> 680 686
#> 681 687
#> 682 688
#> 683 689
#> 684 690
#> 685 691
#> 686 692
#> 687 693
#> 688 694
#> 689 695
#> 690 696
#> 691 697
#> 692 698
#> 693 699
#> 694 700
#> 695 701
#> 696 702
#> 697 703
#> 698 704
#> 699 705
#> 700 706
#> 701 707
#> 702 708
#> 703 709
#> 704 710
#> 705 711
#> 706 712
#> 707 713
#> 708 714
#> 709 715
#> 710 716
#> 711 717
#> 712 718
#> 713 719
#> 714 720
#> 715 721
#> 716 722
#> 717 723
#> 718 724
#> 719 725
#> 720 726
#> 721 727
#> 722 728
#> 723 729
#> 724 730
#> 725 731
#> 726 732
#> 727 733
#> 728 734
#> 729 735
#> 730 736
#> 731 737
#> 732 738
#> 733 739
#> 734 740
#> 735 741
#> 736 742
#> 737 743
#> 738 744
#> 739 745
#> 740 746
#> 741 747
#> 742 748
#> 743 749
#> 744 750
#> 745 751
#> 746 752
#> 747 753
#> 748 754
#> 749 755
#> 750 756
#> 751 757
#> 752 758
#> 753 759
#> 754 760
#> 755 761
#> 756 762
#> 757 763
#> 758 764
#> 759 765
#> 760 766
#> 761 767
#> 762 768
#> 763 769
#> 764 770
#> 765 771
#> 766 772
#> 767 773
#> 768 774
#> 769 775
#> 770 776
#> 771 777
#> 772 778
#> 773 779
#> 774 780
#> 775 781
#> 776 782
#> 777 783
#> 778 784
#> 779 785
#> 780 786
#> 781 787
#> 782 788
#> 783 789
#> 784 790
#> 785 791
#> 786 792
#> 787 793
#> 788 794
#> 789 795
#> 790 796
#> 791 797
#> 792 798
#> 793 799
#> 794 800
#> 795 801
#> 796 802
#> 797 803
#> 798 804
#> 799 805
#> 800 806
#> 801 807
#> 802 808
#> 803 809
#> 804 810
#> 805 811
#> 806 812
#> 807 813
#> 808 814
#> 809 815
#> 810 816
#> 811 817
#> 812 818
#> 813 819
#> 814 820
#> 815 821
#> 816 822
#> 817 823
#> 818 824
#> 819 825
#> 820 826
#> 821 827
#> 822 828
#> 823 829
#> 824 830
#> 825 831
#> 826 832
#> 827 833
#> 828 834
#> 829 835
#> 830 836
#> 831 837
#> 832 838
#> 833 839
#> 834 840
#> 835 841
#> 836 842
#> 837 843
#> 838 844
#> 839 845
#> 840 846
#> 841 847
#> 842 848
#> 843 849
#> 844 850
#> 845 851
#> 846 852
#> 847 853
#> 848 854
#> 849 855
#> 850 856
#> 851 857
#> 852 858
#> 853 859
#> 854 860
#> 855 861
#> 856 862
#> 857 863
#> 858 864
#> 859 865
#> 860 866
#> 861 867
#> 862 868
#> 863 869
#> 864 870
#> 865 871
#> 866 872
#> 867 873
#> 868 874
#> 869 875
#> 870 876
#> 871 877
#> 872 878
#> 873 879
#> 874 880
#> 875 881
#> 876 882
#> 877 883
#> 878 884
#> 879 885
#> 880 886
#> 881 887
#> 882 888
#> 883 889
#> 884 890
#> 885 891
#> 886 892
#> 887 893
#> 888 894
#> 889 895
#> 890 896
#> 891 897
#> 892 898
#> 893 899
#> 894 900
#> 895 901
#> 896 902
#> 897 903
#> 898 904
#> 899 905
#> 900 906
#> 901 907
#> 902 908
#> 903 909
#> 904 910
#> 905 911
#> 906 912
#> 907 913
#> 908 914
#> 909 915
#> 910 916
#> 911 917
#> 912 918
#> 913 919
#> 914 920
#> 915 921
#> 916 922
#> 917 923
#> 918 924
#> 919 925
#> 920 926
#> 921 927
#> 922 928
#> 923 929
#> 924 930
#> 925 931
#> 926 932
#> 927 933
#> 928 934
#> 929 935
#> 930 936
#> 931 937
#> 932 938
#> 933 939
#> 934 940
#> 935 941
#> 936 942
#> 937 943
#> 938 944
#> 939 945
#> 940 946
#> 941 947
#> 942 948
#> 943 949
#> 944 950
#> 945 951
#> 946 952
#> 947 953
#> 948 954
#> 949 955
#> 950 956
#> 951 957
#> 952 958
#> 953 959
#> 954 960
#> 955 961
#> 956 962
#> 957 963
#> 958 964
#> 959 965
#> 960 966
#> 961 967
#> 962 968
#> 963 969
#> 964 970
#> 965 971
#> 966 972
#> 967 973
#> 968 974
#> 969 975
#> 970 976
#> 971 977
#> 972 978
#> 973 979
#> 974 980
#> 975 981
#> 976 982
#> 977 983
#> 978 984
#> 979 985
#> 980 986
#> 981 987
#> 982 988
#> 983 989
#> 984 990
#> 985 991
#> 986 992
#> 987 993
#> 988 994
#> 989 995
#> 990 996
#> 991 997
#> 992 998
#> 993 999
#> 994 1000
########################################################
sessionInfo()
#> R version 4.0.3 (2020-10-10)
#> Platform: x86_64-w64-mingw32/x64 (64-bit)
#> Running under: Windows 10 x64 (build 19042)
#>
#> Matrix products: default
#>
#> locale:
#> [1] LC_COLLATE=Portuguese_Brazil.1252 LC_CTYPE=Portuguese_Brazil.1252
#> [3] LC_MONETARY=Portuguese_Brazil.1252 LC_NUMERIC=C
#> [5] LC_TIME=Portuguese_Brazil.1252
#>
#> attached base packages:
#> [1] stats graphics grDevices utils datasets methods base
#>
#> other attached packages:
#> [1] purrr_0.3.4 magrittr_2.0.1 furrr_0.2.1 future_1.21.0 RSQLite_2.2.3
#> [6] DBI_1.1.1
#>
#> loaded via a namespace (and not attached):
#> [1] Rcpp_1.0.6 parallelly_1.23.0 knitr_1.30 bit_4.0.4
#> [5] rlang_0.4.10 stringr_1.4.0 blob_1.2.1 highr_0.8
#> [9] globals_0.14.0 tools_4.0.3 parallel_4.0.3 xfun_0.20
#> [13] ellipsis_0.3.1 htmltools_0.5.1.1 yaml_2.2.1 bit64_4.0.5
#> [17] digest_0.6.27 vctrs_0.3.6 codetools_0.2-18 memoise_1.1.0
#> [21] evaluate_0.14 rmarkdown_2.6 stringi_1.5.3 compiler_4.0.3
#> [25] listenv_0.8.0 pkgconfig_2.0.3
Created on 2021-01-24 by the reprex package (v0.3.0)
Hi all, can you please try https://github.com/r-dbi/RSQLite/pull/345 to see if that solves your issues?
Please make sure that you set a high enough busy timeout for every connection that you use. (Either with the new function or the PRAGMA
.) Without setting a busy timeout, concurrent (write) access will always fail. I suggest that you set a value that is the highest that you would tolerate. E.g. for many or long concurrent writes, it is fine to set it to several minutes. The goal is to only timeout when there is a deadlock.
With 5 seconds of pause. There is a loss of 3 writes to SQLite.
# Package RSQLite Installed from: remotes::install_github("gaborcsardi/RSQLite")
library(DBI)
library(RSQLite)
library(furrr)
#> Carregando pacotes exigidos: future
library(future)
library(magrittr)
library(purrr)
#>
#> Attaching package: 'purrr'
#> The following object is masked from 'package:magrittr':
#>
#> set_names
########################################################
n_teste <- 1:1000
unlink("bd_test.db")
connect_sgbd <- function() {
conexao <- DBI::dbConnect(RSQLite::SQLite(),
dbname = file.path("bd_test.db")
)
return(conexao)
}
teste_write_sqlite <- function(n_teste) {
tb_teste_iris <- iris[1, ] %>%
dplyr::mutate(n_loop = n_teste)
# 5 seconds pause
tentativas <- purrr::rate_delay(pause = 5,
max_times = 20
)
insist_execute_sqlite <- purrr::insistently(DBI::dbExecute,
tentativas,
quiet = FALSE
)
insist_dbWriteTable <- purrr::insistently(DBI::dbWriteTable,
tentativas,
quiet = FALSE
)
conn <- connect_sgbd()
on.exit(dbDisconnect(conn))
tryCatch(
{
insist_execute_sqlite(conn, "BEGIN IMMEDIATE TRANSACTION")
# Rollback on failure
on.exit(try(dbExecute(conn, "ROLLBACK TRANSACTION")))
out <- insist_dbWriteTable(conn, "tb_teste_iris", tb_teste_iris, append = TRUE)
dbExecute(conn, "COMMIT TRANSACTION")
# Don't rollback on success
on.exit(NULL)
print(paste(n_teste, "-", out))
},
error = function(e) {
print(paste(n_teste, "-", conditionMessage(e)))
}
)
}
future::plan("multisession",
workers = 8
)
options(future.rng.onMisuse = "ignore")
furrr::future_walk(n_teste, teste_write_sqlite, .progress = TRUE)
#> [1] "1 - TRUE"
#> [1] "2 - TRUE"
#> [1] "3 - TRUE"
#> [1] "4 - TRUE"
#> [1] "5 - TRUE"
#> [1] "6 - TRUE"
#> [1] "7 - TRUE"
#> [1] "8 - TRUE"
#> [1] "9 - TRUE"
#> [1] "10 - TRUE"
#> [1] "11 - TRUE"
#> [1] "12 - TRUE"
#> [1] "13 - TRUE"
#> [1] "14 - TRUE"
#> [1] "15 - TRUE"
#> [1] "16 - TRUE"
#> [1] "17 - TRUE"
#> [1] "18 - TRUE"
#> [1] "19 - TRUE"
#> [1] "20 - TRUE"
#> [1] "21 - TRUE"
#> [1] "22 - TRUE"
#> [1] "23 - TRUE"
#> [1] "24 - TRUE"
#> [1] "25 - TRUE"
#> [1] "26 - TRUE"
#> [1] "27 - TRUE"
#> [1] "28 - TRUE"
#> [1] "29 - TRUE"
#> [1] "30 - TRUE"
#> [1] "31 - TRUE"
#> [1] "32 - TRUE"
#> [1] "33 - TRUE"
#> [1] "34 - TRUE"
#> [1] "35 - TRUE"
#> [1] "36 - TRUE"
#> [1] "37 - TRUE"
#> [1] "38 - TRUE"
#> [1] "39 - TRUE"
#> [1] "40 - TRUE"
#> [1] "41 - TRUE"
#> [1] "42 - TRUE"
#> [1] "43 - TRUE"
#> [1] "44 - TRUE"
#> [1] "45 - TRUE"
#> [1] "46 - TRUE"
#> [1] "47 - TRUE"
#> [1] "48 - TRUE"
#> [1] "49 - TRUE"
#> [1] "50 - TRUE"
#> [1] "51 - TRUE"
#> [1] "52 - TRUE"
#> [1] "53 - TRUE"
#> [1] "54 - TRUE"
#> [1] "55 - TRUE"
#> [1] "56 - TRUE"
#> [1] "57 - TRUE"
#> [1] "58 - TRUE"
#> [1] "59 - TRUE"
#> [1] "60 - database is locked"
#> [1] "61 - TRUE"
#> [1] "62 - TRUE"
#> [1] "63 - TRUE"
#> [1] "64 - TRUE"
#> [1] "65 - TRUE"
#> [1] "66 - TRUE"
#> [1] "67 - TRUE"
#> [1] "68 - TRUE"
#> [1] "69 - TRUE"
#> [1] "70 - TRUE"
#> [1] "71 - TRUE"
#> [1] "72 - TRUE"
#> [1] "73 - TRUE"
#> [1] "74 - TRUE"
#> [1] "75 - TRUE"
#> [1] "76 - TRUE"
#> [1] "77 - TRUE"
#> [1] "78 - TRUE"
#> [1] "79 - TRUE"
#> [1] "80 - TRUE"
#> [1] "81 - TRUE"
#> [1] "82 - TRUE"
#> [1] "83 - TRUE"
#> [1] "84 - TRUE"
#> [1] "85 - TRUE"
#> [1] "86 - TRUE"
#> [1] "87 - TRUE"
#> [1] "88 - TRUE"
#> [1] "89 - TRUE"
#> [1] "90 - TRUE"
#> [1] "91 - TRUE"
#> [1] "92 - TRUE"
#> [1] "93 - TRUE"
#> [1] "94 - TRUE"
#> [1] "95 - TRUE"
#> [1] "96 - TRUE"
#> [1] "97 - TRUE"
#> [1] "98 - TRUE"
#> [1] "99 - TRUE"
#> [1] "100 - TRUE"
#> [1] "101 - TRUE"
#> [1] "102 - TRUE"
#> [1] "103 - TRUE"
#> [1] "104 - TRUE"
#> [1] "105 - TRUE"
#> [1] "106 - TRUE"
#> [1] "107 - TRUE"
#> [1] "108 - TRUE"
#> [1] "109 - TRUE"
#> [1] "110 - TRUE"
#> [1] "111 - TRUE"
#> [1] "112 - TRUE"
#> [1] "113 - TRUE"
#> [1] "114 - TRUE"
#> [1] "115 - TRUE"
#> [1] "116 - TRUE"
#> [1] "117 - TRUE"
#> [1] "118 - TRUE"
#> [1] "119 - TRUE"
#> [1] "120 - TRUE"
#> [1] "121 - TRUE"
#> [1] "122 - TRUE"
#> [1] "123 - TRUE"
#> [1] "124 - TRUE"
#> [1] "125 - TRUE"
#> [1] "126 - TRUE"
#> [1] "127 - TRUE"
#> [1] "128 - TRUE"
#> [1] "129 - TRUE"
#> [1] "130 - TRUE"
#> [1] "131 - TRUE"
#> [1] "132 - TRUE"
#> [1] "133 - TRUE"
#> [1] "134 - TRUE"
#> [1] "135 - TRUE"
#> [1] "136 - TRUE"
#> [1] "137 - TRUE"
#> [1] "138 - TRUE"
#> [1] "139 - TRUE"
#> [1] "140 - TRUE"
#> [1] "141 - TRUE"
#> [1] "142 - TRUE"
#> [1] "143 - TRUE"
#> [1] "144 - TRUE"
#> [1] "145 - TRUE"
#> [1] "146 - TRUE"
#> [1] "147 - TRUE"
#> [1] "148 - TRUE"
#> [1] "149 - TRUE"
#> [1] "150 - TRUE"
#> [1] "151 - TRUE"
#> [1] "152 - TRUE"
#> [1] "153 - TRUE"
#> [1] "154 - TRUE"
#> [1] "155 - TRUE"
#> [1] "156 - TRUE"
#> [1] "157 - TRUE"
#> [1] "158 - TRUE"
#> [1] "159 - TRUE"
#> [1] "160 - TRUE"
#> [1] "161 - TRUE"
#> [1] "162 - TRUE"
#> [1] "163 - TRUE"
#> [1] "164 - TRUE"
#> [1] "165 - TRUE"
#> [1] "166 - TRUE"
#> [1] "167 - TRUE"
#> [1] "168 - TRUE"
#> [1] "169 - TRUE"
#> [1] "170 - TRUE"
#> [1] "171 - TRUE"
#> [1] "172 - TRUE"
#> [1] "173 - TRUE"
#> [1] "174 - TRUE"
#> [1] "175 - TRUE"
#> [1] "176 - TRUE"
#> [1] "177 - TRUE"
#> [1] "178 - TRUE"
#> [1] "179 - TRUE"
#> [1] "180 - TRUE"
#> [1] "181 - TRUE"
#> [1] "182 - TRUE"
#> [1] "183 - TRUE"
#> [1] "184 - TRUE"
#> [1] "185 - TRUE"
#> [1] "186 - TRUE"
#> [1] "187 - TRUE"
#> [1] "188 - TRUE"
#> [1] "189 - TRUE"
#> [1] "190 - TRUE"
#> [1] "191 - TRUE"
#> [1] "192 - TRUE"
#> [1] "193 - TRUE"
#> [1] "194 - TRUE"
#> [1] "195 - TRUE"
#> [1] "196 - TRUE"
#> [1] "197 - TRUE"
#> [1] "198 - TRUE"
#> [1] "199 - TRUE"
#> [1] "200 - TRUE"
#> [1] "201 - TRUE"
#> [1] "202 - TRUE"
#> [1] "203 - TRUE"
#> [1] "204 - TRUE"
#> [1] "205 - TRUE"
#> [1] "206 - TRUE"
#> [1] "207 - TRUE"
#> [1] "208 - TRUE"
#> [1] "209 - TRUE"
#> [1] "210 - TRUE"
#> [1] "211 - TRUE"
#> [1] "212 - TRUE"
#> [1] "213 - TRUE"
#> [1] "214 - TRUE"
#> [1] "215 - TRUE"
#> [1] "216 - TRUE"
#> [1] "217 - TRUE"
#> [1] "218 - TRUE"
#> [1] "219 - TRUE"
#> [1] "220 - TRUE"
#> [1] "221 - TRUE"
#> [1] "222 - TRUE"
#> [1] "223 - TRUE"
#> [1] "224 - TRUE"
#> [1] "225 - TRUE"
#> [1] "226 - TRUE"
#> [1] "227 - TRUE"
#> [1] "228 - TRUE"
#> [1] "229 - TRUE"
#> [1] "230 - TRUE"
#> [1] "231 - TRUE"
#> [1] "232 - TRUE"
#> [1] "233 - TRUE"
#> [1] "234 - TRUE"
#> [1] "235 - TRUE"
#> [1] "236 - TRUE"
#> [1] "237 - TRUE"
#> [1] "238 - TRUE"
#> [1] "239 - TRUE"
#> [1] "240 - TRUE"
#> [1] "241 - TRUE"
#> [1] "242 - TRUE"
#> [1] "243 - TRUE"
#> [1] "244 - TRUE"
#> [1] "245 - TRUE"
#> [1] "246 - TRUE"
#> [1] "247 - TRUE"
#> [1] "248 - TRUE"
#> [1] "249 - TRUE"
#> [1] "250 - TRUE"
#> Error: database is locked
#> Retrying in 5 seconds.
#> Error: database is locked
#> Retrying in 5 seconds.
#> Error: database is locked
#> Retrying in 5 seconds.
#> [1] "251 - TRUE"
#> [1] "252 - TRUE"
#> [1] "253 - TRUE"
#> [1] "254 - TRUE"
#> [1] "255 - TRUE"
#> [1] "256 - TRUE"
#> [1] "257 - TRUE"
#> [1] "258 - TRUE"
#> [1] "259 - TRUE"
#> [1] "260 - TRUE"
#> [1] "261 - TRUE"
#> [1] "262 - TRUE"
#> [1] "263 - TRUE"
#> [1] "264 - TRUE"
#> [1] "265 - TRUE"
#> [1] "266 - TRUE"
#> [1] "267 - TRUE"
#> [1] "268 - TRUE"
#> [1] "269 - TRUE"
#> [1] "270 - TRUE"
#> [1] "271 - TRUE"
#> [1] "272 - TRUE"
#> [1] "273 - TRUE"
#> [1] "274 - TRUE"
#> [1] "275 - TRUE"
#> [1] "276 - TRUE"
#> [1] "277 - TRUE"
#> [1] "278 - TRUE"
#> [1] "279 - TRUE"
#> [1] "280 - TRUE"
#> [1] "281 - TRUE"
#> [1] "282 - TRUE"
#> [1] "283 - TRUE"
#> [1] "284 - TRUE"
#> [1] "285 - TRUE"
#> [1] "286 - TRUE"
#> [1] "287 - TRUE"
#> [1] "288 - TRUE"
#> [1] "289 - TRUE"
#> [1] "290 - TRUE"
#> [1] "291 - TRUE"
#> [1] "292 - TRUE"
#> [1] "293 - TRUE"
#> [1] "294 - TRUE"
#> [1] "295 - TRUE"
#> [1] "296 - TRUE"
#> [1] "297 - TRUE"
#> [1] "298 - TRUE"
#> [1] "299 - TRUE"
#> [1] "300 - TRUE"
#> [1] "301 - TRUE"
#> [1] "302 - TRUE"
#> [1] "303 - TRUE"
#> [1] "304 - TRUE"
#> [1] "305 - TRUE"
#> [1] "306 - TRUE"
#> [1] "307 - TRUE"
#> [1] "308 - TRUE"
#> [1] "309 - TRUE"
#> [1] "310 - TRUE"
#> [1] "311 - TRUE"
#> [1] "312 - TRUE"
#> [1] "313 - TRUE"
#> [1] "314 - TRUE"
#> [1] "315 - TRUE"
#> [1] "316 - TRUE"
#> [1] "317 - TRUE"
#> [1] "318 - TRUE"
#> [1] "319 - TRUE"
#> [1] "320 - TRUE"
#> [1] "321 - TRUE"
#> [1] "322 - TRUE"
#> [1] "323 - TRUE"
#> [1] "324 - TRUE"
#> [1] "325 - TRUE"
#> [1] "326 - TRUE"
#> [1] "327 - TRUE"
#> [1] "328 - TRUE"
#> [1] "329 - TRUE"
#> [1] "330 - TRUE"
#> [1] "331 - TRUE"
#> [1] "332 - TRUE"
#> [1] "333 - TRUE"
#> [1] "334 - TRUE"
#> [1] "335 - TRUE"
#> [1] "336 - TRUE"
#> [1] "337 - TRUE"
#> [1] "338 - TRUE"
#> [1] "339 - TRUE"
#> [1] "340 - TRUE"
#> [1] "341 - TRUE"
#> [1] "342 - TRUE"
#> [1] "343 - TRUE"
#> [1] "344 - TRUE"
#> [1] "345 - TRUE"
#> [1] "346 - TRUE"
#> [1] "347 - TRUE"
#> [1] "348 - TRUE"
#> [1] "349 - TRUE"
#> [1] "350 - TRUE"
#> [1] "351 - TRUE"
#> [1] "352 - TRUE"
#> [1] "353 - TRUE"
#> [1] "354 - TRUE"
#> [1] "355 - TRUE"
#> [1] "356 - TRUE"
#> [1] "357 - TRUE"
#> [1] "358 - TRUE"
#> [1] "359 - TRUE"
#> [1] "360 - TRUE"
#> [1] "361 - TRUE"
#> [1] "362 - TRUE"
#> [1] "363 - TRUE"
#> [1] "364 - TRUE"
#> [1] "365 - TRUE"
#> [1] "366 - TRUE"
#> [1] "367 - TRUE"
#> [1] "368 - TRUE"
#> [1] "369 - TRUE"
#> [1] "370 - TRUE"
#> [1] "371 - TRUE"
#> [1] "372 - TRUE"
#> [1] "373 - TRUE"
#> [1] "374 - TRUE"
#> [1] "375 - TRUE"
#> Error: database is locked
#> Retrying in 5 seconds.
#> Error: database is locked
#> Retrying in 5 seconds.
#> Error: database is locked
#> Retrying in 5 seconds.
#> Error: database is locked
#> Retrying in 5 seconds.
#> [1] "376 - TRUE"
#> [1] "377 - TRUE"
#> [1] "378 - TRUE"
#> [1] "379 - TRUE"
#> [1] "380 - TRUE"
#> [1] "381 - TRUE"
#> [1] "382 - TRUE"
#> [1] "383 - TRUE"
#> [1] "384 - TRUE"
#> [1] "385 - TRUE"
#> [1] "386 - TRUE"
#> [1] "387 - TRUE"
#> [1] "388 - TRUE"
#> [1] "389 - TRUE"
#> [1] "390 - TRUE"
#> [1] "391 - TRUE"
#> [1] "392 - TRUE"
#> [1] "393 - TRUE"
#> [1] "394 - TRUE"
#> [1] "395 - TRUE"
#> [1] "396 - TRUE"
#> [1] "397 - TRUE"
#> [1] "398 - TRUE"
#> [1] "399 - TRUE"
#> [1] "400 - TRUE"
#> [1] "401 - TRUE"
#> [1] "402 - TRUE"
#> [1] "403 - TRUE"
#> [1] "404 - TRUE"
#> [1] "405 - TRUE"
#> [1] "406 - TRUE"
#> [1] "407 - TRUE"
#> [1] "408 - TRUE"
#> [1] "409 - TRUE"
#> [1] "410 - TRUE"
#> [1] "411 - TRUE"
#> [1] "412 - TRUE"
#> [1] "413 - TRUE"
#> [1] "414 - TRUE"
#> [1] "415 - TRUE"
#> [1] "416 - TRUE"
#> [1] "417 - TRUE"
#> [1] "418 - TRUE"
#> [1] "419 - TRUE"
#> [1] "420 - TRUE"
#> [1] "421 - TRUE"
#> [1] "422 - TRUE"
#> [1] "423 - TRUE"
#> [1] "424 - TRUE"
#> [1] "425 - TRUE"
#> [1] "426 - TRUE"
#> [1] "427 - TRUE"
#> [1] "428 - TRUE"
#> [1] "429 - TRUE"
#> [1] "430 - TRUE"
#> [1] "431 - TRUE"
#> [1] "432 - TRUE"
#> [1] "433 - TRUE"
#> [1] "434 - TRUE"
#> [1] "435 - TRUE"
#> [1] "436 - TRUE"
#> [1] "437 - TRUE"
#> [1] "438 - TRUE"
#> [1] "439 - TRUE"
#> [1] "440 - TRUE"
#> [1] "441 - TRUE"
#> [1] "442 - TRUE"
#> [1] "443 - TRUE"
#> [1] "444 - TRUE"
#> [1] "445 - TRUE"
#> [1] "446 - TRUE"
#> [1] "447 - TRUE"
#> [1] "448 - TRUE"
#> [1] "449 - TRUE"
#> [1] "450 - TRUE"
#> [1] "451 - TRUE"
#> [1] "452 - TRUE"
#> [1] "453 - TRUE"
#> [1] "454 - TRUE"
#> [1] "455 - TRUE"
#> [1] "456 - TRUE"
#> [1] "457 - TRUE"
#> [1] "458 - TRUE"
#> [1] "459 - TRUE"
#> [1] "460 - TRUE"
#> [1] "461 - TRUE"
#> [1] "462 - TRUE"
#> [1] "463 - TRUE"
#> [1] "464 - TRUE"
#> [1] "465 - TRUE"
#> [1] "466 - TRUE"
#> [1] "467 - TRUE"
#> [1] "468 - TRUE"
#> [1] "469 - TRUE"
#> [1] "470 - TRUE"
#> [1] "471 - TRUE"
#> [1] "472 - TRUE"
#> [1] "473 - TRUE"
#> [1] "474 - TRUE"
#> [1] "475 - TRUE"
#> [1] "476 - TRUE"
#> [1] "477 - TRUE"
#> [1] "478 - TRUE"
#> [1] "479 - TRUE"
#> [1] "480 - TRUE"
#> [1] "481 - TRUE"
#> [1] "482 - TRUE"
#> [1] "483 - TRUE"
#> [1] "484 - TRUE"
#> [1] "485 - TRUE"
#> [1] "486 - TRUE"
#> [1] "487 - TRUE"
#> [1] "488 - TRUE"
#> [1] "489 - TRUE"
#> [1] "490 - TRUE"
#> [1] "491 - TRUE"
#> [1] "492 - TRUE"
#> [1] "493 - TRUE"
#> [1] "494 - TRUE"
#> [1] "495 - TRUE"
#> [1] "496 - TRUE"
#> [1] "497 - database is locked"
#> [1] "498 - TRUE"
#> [1] "499 - TRUE"
#> [1] "500 - TRUE"
#> Error: database is locked
#> Retrying in 5 seconds.
#> Error: database is locked
#> Retrying in 5 seconds.
#> Error: database is locked
#> Retrying in 5 seconds.
#> [1] "501 - TRUE"
#> [1] "502 - TRUE"
#> [1] "503 - TRUE"
#> [1] "504 - TRUE"
#> [1] "505 - TRUE"
#> [1] "506 - TRUE"
#> [1] "507 - TRUE"
#> [1] "508 - TRUE"
#> [1] "509 - TRUE"
#> [1] "510 - TRUE"
#> [1] "511 - TRUE"
#> [1] "512 - TRUE"
#> [1] "513 - TRUE"
#> [1] "514 - TRUE"
#> [1] "515 - TRUE"
#> [1] "516 - TRUE"
#> [1] "517 - TRUE"
#> [1] "518 - TRUE"
#> [1] "519 - TRUE"
#> [1] "520 - TRUE"
#> [1] "521 - TRUE"
#> [1] "522 - TRUE"
#> [1] "523 - TRUE"
#> [1] "524 - TRUE"
#> [1] "525 - TRUE"
#> [1] "526 - TRUE"
#> [1] "527 - TRUE"
#> [1] "528 - TRUE"
#> [1] "529 - TRUE"
#> [1] "530 - TRUE"
#> [1] "531 - TRUE"
#> [1] "532 - TRUE"
#> [1] "533 - TRUE"
#> [1] "534 - TRUE"
#> [1] "535 - TRUE"
#> [1] "536 - TRUE"
#> [1] "537 - TRUE"
#> [1] "538 - TRUE"
#> [1] "539 - TRUE"
#> [1] "540 - TRUE"
#> [1] "541 - TRUE"
#> [1] "542 - TRUE"
#> [1] "543 - TRUE"
#> [1] "544 - TRUE"
#> [1] "545 - TRUE"
#> [1] "546 - TRUE"
#> [1] "547 - TRUE"
#> [1] "548 - TRUE"
#> [1] "549 - TRUE"
#> [1] "550 - TRUE"
#> [1] "551 - TRUE"
#> [1] "552 - TRUE"
#> [1] "553 - TRUE"
#> [1] "554 - TRUE"
#> [1] "555 - TRUE"
#> [1] "556 - TRUE"
#> [1] "557 - TRUE"
#> [1] "558 - TRUE"
#> [1] "559 - TRUE"
#> [1] "560 - TRUE"
#> [1] "561 - TRUE"
#> [1] "562 - TRUE"
#> [1] "563 - TRUE"
#> [1] "564 - TRUE"
#> [1] "565 - TRUE"
#> [1] "566 - TRUE"
#> [1] "567 - TRUE"
#> [1] "568 - TRUE"
#> [1] "569 - TRUE"
#> [1] "570 - TRUE"
#> [1] "571 - TRUE"
#> [1] "572 - TRUE"
#> [1] "573 - TRUE"
#> [1] "574 - TRUE"
#> [1] "575 - TRUE"
#> [1] "576 - TRUE"
#> [1] "577 - TRUE"
#> [1] "578 - TRUE"
#> [1] "579 - TRUE"
#> [1] "580 - TRUE"
#> [1] "581 - TRUE"
#> [1] "582 - TRUE"
#> [1] "583 - TRUE"
#> [1] "584 - TRUE"
#> [1] "585 - TRUE"
#> [1] "586 - TRUE"
#> [1] "587 - TRUE"
#> [1] "588 - TRUE"
#> [1] "589 - TRUE"
#> [1] "590 - TRUE"
#> [1] "591 - TRUE"
#> [1] "592 - TRUE"
#> [1] "593 - TRUE"
#> [1] "594 - TRUE"
#> [1] "595 - TRUE"
#> [1] "596 - TRUE"
#> [1] "597 - TRUE"
#> [1] "598 - TRUE"
#> [1] "599 - TRUE"
#> [1] "600 - TRUE"
#> [1] "601 - TRUE"
#> [1] "602 - TRUE"
#> [1] "603 - TRUE"
#> [1] "604 - TRUE"
#> [1] "605 - TRUE"
#> [1] "606 - TRUE"
#> [1] "607 - TRUE"
#> [1] "608 - TRUE"
#> [1] "609 - TRUE"
#> [1] "610 - TRUE"
#> [1] "611 - TRUE"
#> [1] "612 - TRUE"
#> [1] "613 - TRUE"
#> [1] "614 - TRUE"
#> [1] "615 - TRUE"
#> [1] "616 - TRUE"
#> [1] "617 - TRUE"
#> [1] "618 - TRUE"
#> [1] "619 - TRUE"
#> [1] "620 - TRUE"
#> [1] "621 - TRUE"
#> [1] "622 - TRUE"
#> [1] "623 - TRUE"
#> [1] "624 - TRUE"
#> [1] "625 - TRUE"
#> Error: database is locked
#> Retrying in 5 seconds.
#> [1] "626 - TRUE"
#> [1] "627 - TRUE"
#> [1] "628 - TRUE"
#> [1] "629 - TRUE"
#> [1] "630 - TRUE"
#> [1] "631 - TRUE"
#> [1] "632 - TRUE"
#> [1] "633 - TRUE"
#> [1] "634 - TRUE"
#> [1] "635 - TRUE"
#> [1] "636 - TRUE"
#> [1] "637 - TRUE"
#> [1] "638 - TRUE"
#> [1] "639 - TRUE"
#> [1] "640 - TRUE"
#> [1] "641 - TRUE"
#> [1] "642 - TRUE"
#> [1] "643 - TRUE"
#> [1] "644 - TRUE"
#> [1] "645 - TRUE"
#> [1] "646 - TRUE"
#> [1] "647 - TRUE"
#> [1] "648 - TRUE"
#> [1] "649 - TRUE"
#> [1] "650 - TRUE"
#> [1] "651 - TRUE"
#> [1] "652 - TRUE"
#> [1] "653 - TRUE"
#> [1] "654 - TRUE"
#> [1] "655 - TRUE"
#> [1] "656 - TRUE"
#> [1] "657 - TRUE"
#> [1] "658 - TRUE"
#> [1] "659 - TRUE"
#> [1] "660 - TRUE"
#> [1] "661 - TRUE"
#> [1] "662 - TRUE"
#> [1] "663 - TRUE"
#> [1] "664 - TRUE"
#> [1] "665 - TRUE"
#> [1] "666 - TRUE"
#> [1] "667 - TRUE"
#> [1] "668 - TRUE"
#> [1] "669 - TRUE"
#> [1] "670 - TRUE"
#> [1] "671 - TRUE"
#> [1] "672 - TRUE"
#> [1] "673 - TRUE"
#> [1] "674 - TRUE"
#> [1] "675 - TRUE"
#> [1] "676 - TRUE"
#> [1] "677 - TRUE"
#> [1] "678 - TRUE"
#> [1] "679 - TRUE"
#> [1] "680 - TRUE"
#> [1] "681 - TRUE"
#> [1] "682 - database is locked"
#> [1] "683 - TRUE"
#> [1] "684 - TRUE"
#> [1] "685 - TRUE"
#> [1] "686 - TRUE"
#> [1] "687 - TRUE"
#> [1] "688 - TRUE"
#> [1] "689 - TRUE"
#> [1] "690 - TRUE"
#> [1] "691 - TRUE"
#> [1] "692 - TRUE"
#> [1] "693 - TRUE"
#> [1] "694 - TRUE"
#> [1] "695 - TRUE"
#> [1] "696 - TRUE"
#> [1] "697 - TRUE"
#> [1] "698 - TRUE"
#> [1] "699 - TRUE"
#> [1] "700 - TRUE"
#> [1] "701 - TRUE"
#> [1] "702 - TRUE"
#> [1] "703 - TRUE"
#> [1] "704 - TRUE"
#> [1] "705 - TRUE"
#> [1] "706 - TRUE"
#> [1] "707 - TRUE"
#> [1] "708 - TRUE"
#> [1] "709 - TRUE"
#> [1] "710 - TRUE"
#> [1] "711 - TRUE"
#> [1] "712 - TRUE"
#> [1] "713 - TRUE"
#> [1] "714 - TRUE"
#> [1] "715 - TRUE"
#> [1] "716 - TRUE"
#> [1] "717 - TRUE"
#> [1] "718 - TRUE"
#> [1] "719 - TRUE"
#> [1] "720 - TRUE"
#> [1] "721 - TRUE"
#> [1] "722 - TRUE"
#> [1] "723 - TRUE"
#> [1] "724 - TRUE"
#> [1] "725 - TRUE"
#> [1] "726 - TRUE"
#> [1] "727 - TRUE"
#> [1] "728 - TRUE"
#> [1] "729 - TRUE"
#> [1] "730 - TRUE"
#> [1] "731 - TRUE"
#> [1] "732 - TRUE"
#> [1] "733 - TRUE"
#> [1] "734 - TRUE"
#> [1] "735 - TRUE"
#> [1] "736 - TRUE"
#> [1] "737 - TRUE"
#> [1] "738 - TRUE"
#> [1] "739 - TRUE"
#> [1] "740 - TRUE"
#> [1] "741 - TRUE"
#> [1] "742 - TRUE"
#> [1] "743 - TRUE"
#> [1] "744 - TRUE"
#> [1] "745 - TRUE"
#> [1] "746 - TRUE"
#> [1] "747 - TRUE"
#> [1] "748 - TRUE"
#> [1] "749 - TRUE"
#> [1] "750 - TRUE"
#> [1] "751 - TRUE"
#> [1] "752 - TRUE"
#> [1] "753 - TRUE"
#> [1] "754 - TRUE"
#> [1] "755 - TRUE"
#> [1] "756 - TRUE"
#> [1] "757 - TRUE"
#> [1] "758 - TRUE"
#> [1] "759 - TRUE"
#> [1] "760 - TRUE"
#> [1] "761 - TRUE"
#> [1] "762 - TRUE"
#> [1] "763 - TRUE"
#> [1] "764 - TRUE"
#> [1] "765 - TRUE"
#> [1] "766 - TRUE"
#> [1] "767 - TRUE"
#> [1] "768 - TRUE"
#> [1] "769 - TRUE"
#> [1] "770 - TRUE"
#> [1] "771 - TRUE"
#> [1] "772 - TRUE"
#> [1] "773 - TRUE"
#> [1] "774 - TRUE"
#> [1] "775 - TRUE"
#> [1] "776 - TRUE"
#> [1] "777 - TRUE"
#> [1] "778 - TRUE"
#> [1] "779 - TRUE"
#> [1] "780 - TRUE"
#> [1] "781 - TRUE"
#> [1] "782 - TRUE"
#> [1] "783 - TRUE"
#> [1] "784 - TRUE"
#> [1] "785 - TRUE"
#> [1] "786 - TRUE"
#> [1] "787 - TRUE"
#> [1] "788 - TRUE"
#> [1] "789 - TRUE"
#> [1] "790 - TRUE"
#> [1] "791 - TRUE"
#> [1] "792 - TRUE"
#> [1] "793 - TRUE"
#> [1] "794 - TRUE"
#> [1] "795 - TRUE"
#> [1] "796 - TRUE"
#> [1] "797 - TRUE"
#> [1] "798 - TRUE"
#> [1] "799 - TRUE"
#> [1] "800 - TRUE"
#> [1] "801 - TRUE"
#> [1] "802 - TRUE"
#> [1] "803 - TRUE"
#> [1] "804 - TRUE"
#> [1] "805 - TRUE"
#> [1] "806 - TRUE"
#> [1] "807 - TRUE"
#> [1] "808 - TRUE"
#> [1] "809 - TRUE"
#> [1] "810 - TRUE"
#> [1] "811 - TRUE"
#> [1] "812 - TRUE"
#> [1] "813 - TRUE"
#> [1] "814 - TRUE"
#> [1] "815 - TRUE"
#> [1] "816 - TRUE"
#> [1] "817 - TRUE"
#> [1] "818 - TRUE"
#> [1] "819 - TRUE"
#> [1] "820 - TRUE"
#> [1] "821 - TRUE"
#> [1] "822 - TRUE"
#> [1] "823 - TRUE"
#> [1] "824 - TRUE"
#> [1] "825 - TRUE"
#> [1] "826 - TRUE"
#> [1] "827 - TRUE"
#> [1] "828 - TRUE"
#> [1] "829 - TRUE"
#> [1] "830 - TRUE"
#> [1] "831 - TRUE"
#> [1] "832 - TRUE"
#> [1] "833 - TRUE"
#> [1] "834 - TRUE"
#> [1] "835 - TRUE"
#> [1] "836 - TRUE"
#> [1] "837 - TRUE"
#> [1] "838 - TRUE"
#> [1] "839 - TRUE"
#> [1] "840 - TRUE"
#> [1] "841 - TRUE"
#> [1] "842 - TRUE"
#> [1] "843 - TRUE"
#> [1] "844 - TRUE"
#> [1] "845 - TRUE"
#> [1] "846 - TRUE"
#> [1] "847 - TRUE"
#> [1] "848 - TRUE"
#> [1] "849 - TRUE"
#> [1] "850 - TRUE"
#> [1] "851 - TRUE"
#> [1] "852 - TRUE"
#> [1] "853 - TRUE"
#> [1] "854 - TRUE"
#> [1] "855 - TRUE"
#> [1] "856 - TRUE"
#> [1] "857 - TRUE"
#> [1] "858 - TRUE"
#> [1] "859 - TRUE"
#> [1] "860 - TRUE"
#> [1] "861 - TRUE"
#> [1] "862 - TRUE"
#> [1] "863 - TRUE"
#> [1] "864 - TRUE"
#> [1] "865 - TRUE"
#> [1] "866 - TRUE"
#> [1] "867 - TRUE"
#> [1] "868 - TRUE"
#> [1] "869 - TRUE"
#> [1] "870 - TRUE"
#> [1] "871 - TRUE"
#> [1] "872 - TRUE"
#> [1] "873 - TRUE"
#> [1] "874 - TRUE"
#> [1] "875 - TRUE"
#> Error: database is locked
#> Retrying in 5 seconds.
#> Error: database is locked
#> Retrying in 5 seconds.
#> Error: database is locked
#> Retrying in 5 seconds.
#> Error: database is locked
#> Retrying in 5 seconds.
#> [1] "876 - TRUE"
#> [1] "877 - TRUE"
#> [1] "878 - TRUE"
#> [1] "879 - TRUE"
#> [1] "880 - TRUE"
#> [1] "881 - TRUE"
#> [1] "882 - TRUE"
#> [1] "883 - TRUE"
#> [1] "884 - TRUE"
#> [1] "885 - TRUE"
#> [1] "886 - TRUE"
#> [1] "887 - TRUE"
#> [1] "888 - TRUE"
#> [1] "889 - TRUE"
#> [1] "890 - TRUE"
#> [1] "891 - TRUE"
#> [1] "892 - TRUE"
#> [1] "893 - TRUE"
#> [1] "894 - TRUE"
#> [1] "895 - TRUE"
#> [1] "896 - TRUE"
#> [1] "897 - TRUE"
#> [1] "898 - TRUE"
#> [1] "899 - TRUE"
#> [1] "900 - TRUE"
#> [1] "901 - TRUE"
#> [1] "902 - TRUE"
#> [1] "903 - TRUE"
#> [1] "904 - TRUE"
#> [1] "905 - TRUE"
#> [1] "906 - TRUE"
#> [1] "907 - TRUE"
#> [1] "908 - TRUE"
#> [1] "909 - TRUE"
#> [1] "910 - TRUE"
#> [1] "911 - TRUE"
#> [1] "912 - TRUE"
#> [1] "913 - TRUE"
#> [1] "914 - TRUE"
#> [1] "915 - TRUE"
#> [1] "916 - TRUE"
#> [1] "917 - TRUE"
#> [1] "918 - TRUE"
#> [1] "919 - TRUE"
#> [1] "920 - TRUE"
#> [1] "921 - TRUE"
#> [1] "922 - TRUE"
#> [1] "923 - TRUE"
#> [1] "924 - TRUE"
#> [1] "925 - TRUE"
#> [1] "926 - TRUE"
#> [1] "927 - TRUE"
#> [1] "928 - TRUE"
#> [1] "929 - TRUE"
#> [1] "930 - TRUE"
#> [1] "931 - TRUE"
#> [1] "932 - TRUE"
#> [1] "933 - TRUE"
#> [1] "934 - TRUE"
#> [1] "935 - TRUE"
#> [1] "936 - TRUE"
#> [1] "937 - TRUE"
#> [1] "938 - TRUE"
#> [1] "939 - TRUE"
#> [1] "940 - TRUE"
#> [1] "941 - TRUE"
#> [1] "942 - TRUE"
#> [1] "943 - TRUE"
#> [1] "944 - TRUE"
#> [1] "945 - TRUE"
#> [1] "946 - TRUE"
#> [1] "947 - TRUE"
#> [1] "948 - TRUE"
#> [1] "949 - TRUE"
#> [1] "950 - TRUE"
#> [1] "951 - TRUE"
#> [1] "952 - TRUE"
#> [1] "953 - TRUE"
#> [1] "954 - TRUE"
#> [1] "955 - TRUE"
#> [1] "956 - TRUE"
#> [1] "957 - TRUE"
#> [1] "958 - TRUE"
#> [1] "959 - TRUE"
#> [1] "960 - TRUE"
#> [1] "961 - TRUE"
#> [1] "962 - TRUE"
#> [1] "963 - TRUE"
#> [1] "964 - TRUE"
#> [1] "965 - TRUE"
#> [1] "966 - TRUE"
#> [1] "967 - TRUE"
#> [1] "968 - TRUE"
#> [1] "969 - TRUE"
#> [1] "970 - TRUE"
#> [1] "971 - TRUE"
#> [1] "972 - TRUE"
#> [1] "973 - TRUE"
#> [1] "974 - TRUE"
#> [1] "975 - TRUE"
#> [1] "976 - TRUE"
#> [1] "977 - TRUE"
#> [1] "978 - TRUE"
#> [1] "979 - TRUE"
#> [1] "980 - TRUE"
#> [1] "981 - TRUE"
#> [1] "982 - TRUE"
#> [1] "983 - TRUE"
#> [1] "984 - TRUE"
#> [1] "985 - TRUE"
#> [1] "986 - TRUE"
#> [1] "987 - TRUE"
#> [1] "988 - TRUE"
#> [1] "989 - TRUE"
#> [1] "990 - TRUE"
#> [1] "991 - TRUE"
#> [1] "992 - TRUE"
#> [1] "993 - TRUE"
#> [1] "994 - TRUE"
#> [1] "995 - TRUE"
#> [1] "996 - TRUE"
#> [1] "997 - TRUE"
#> [1] "998 - TRUE"
#> [1] "999 - TRUE"
#> [1] "1000 - TRUE"
#> Error: database is locked
#> Retrying in 5 seconds.
#> Error: database is locked
#> Retrying in 5 seconds.
#> Error: database is locked
#> Retrying in 5 seconds.
#> Error: database is locked
#> Retrying in 5 seconds.
#> Error: database is locked
#> Retrying in 5 seconds.
con <- dbConnect(RSQLite::SQLite(), dbname = file.path("bd_test.db"))
dbGetQuery(con, "SELECT n_loop FROM tb_teste_iris ORDER BY n_loop")
#> n_loop
#> 1 1
#> 2 2
#> 3 3
#> 4 4
#> 5 5
#> 6 6
#> 7 7
#> 8 8
#> 9 9
#> 10 10
#> 11 11
#> 12 12
#> 13 13
#> 14 14
#> 15 15
#> 16 16
#> 17 17
#> 18 18
#> 19 19
#> 20 20
#> 21 21
#> 22 22
#> 23 23
#> 24 24
#> 25 25
#> 26 26
#> 27 27
#> 28 28
#> 29 29
#> 30 30
#> 31 31
#> 32 32
#> 33 33
#> 34 34
#> 35 35
#> 36 36
#> 37 37
#> 38 38
#> 39 39
#> 40 40
#> 41 41
#> 42 42
#> 43 43
#> 44 44
#> 45 45
#> 46 46
#> 47 47
#> 48 48
#> 49 49
#> 50 50
#> 51 51
#> 52 52
#> 53 53
#> 54 54
#> 55 55
#> 56 56
#> 57 57
#> 58 58
#> 59 59
#> 60 61
#> 61 62
#> 62 63
#> 63 64
#> 64 65
#> 65 66
#> 66 67
#> 67 68
#> 68 69
#> 69 70
#> 70 71
#> 71 72
#> 72 73
#> 73 74
#> 74 75
#> 75 76
#> 76 77
#> 77 78
#> 78 79
#> 79 80
#> 80 81
#> 81 82
#> 82 83
#> 83 84
#> 84 85
#> 85 86
#> 86 87
#> 87 88
#> 88 89
#> 89 90
#> 90 91
#> 91 92
#> 92 93
#> 93 94
#> 94 95
#> 95 96
#> 96 97
#> 97 98
#> 98 99
#> 99 100
#> 100 101
#> 101 102
#> 102 103
#> 103 104
#> 104 105
#> 105 106
#> 106 107
#> 107 108
#> 108 109
#> 109 110
#> 110 111
#> 111 112
#> 112 113
#> 113 114
#> 114 115
#> 115 116
#> 116 117
#> 117 118
#> 118 119
#> 119 120
#> 120 121
#> 121 122
#> 122 123
#> 123 124
#> 124 125
#> 125 126
#> 126 127
#> 127 128
#> 128 129
#> 129 130
#> 130 131
#> 131 132
#> 132 133
#> 133 134
#> 134 135
#> 135 136
#> 136 137
#> 137 138
#> 138 139
#> 139 140
#> 140 141
#> 141 142
#> 142 143
#> 143 144
#> 144 145
#> 145 146
#> 146 147
#> 147 148
#> 148 149
#> 149 150
#> 150 151
#> 151 152
#> 152 153
#> 153 154
#> 154 155
#> 155 156
#> 156 157
#> 157 158
#> 158 159
#> 159 160
#> 160 161
#> 161 162
#> 162 163
#> 163 164
#> 164 165
#> 165 166
#> 166 167
#> 167 168
#> 168 169
#> 169 170
#> 170 171
#> 171 172
#> 172 173
#> 173 174
#> 174 175
#> 175 176
#> 176 177
#> 177 178
#> 178 179
#> 179 180
#> 180 181
#> 181 182
#> 182 183
#> 183 184
#> 184 185
#> 185 186
#> 186 187
#> 187 188
#> 188 189
#> 189 190
#> 190 191
#> 191 192
#> 192 193
#> 193 194
#> 194 195
#> 195 196
#> 196 197
#> 197 198
#> 198 199
#> 199 200
#> 200 201
#> 201 202
#> 202 203
#> 203 204
#> 204 205
#> 205 206
#> 206 207
#> 207 208
#> 208 209
#> 209 210
#> 210 211
#> 211 212
#> 212 213
#> 213 214
#> 214 215
#> 215 216
#> 216 217
#> 217 218
#> 218 219
#> 219 220
#> 220 221
#> 221 222
#> 222 223
#> 223 224
#> 224 225
#> 225 226
#> 226 227
#> 227 228
#> 228 229
#> 229 230
#> 230 231
#> 231 232
#> 232 233
#> 233 234
#> 234 235
#> 235 236
#> 236 237
#> 237 238
#> 238 239
#> 239 240
#> 240 241
#> 241 242
#> 242 243
#> 243 244
#> 244 245
#> 245 246
#> 246 247
#> 247 248
#> 248 249
#> 249 250
#> 250 251
#> 251 252
#> 252 253
#> 253 254
#> 254 255
#> 255 256
#> 256 257
#> 257 258
#> 258 259
#> 259 260
#> 260 261
#> 261 262
#> 262 263
#> 263 264
#> 264 265
#> 265 266
#> 266 267
#> 267 268
#> 268 269
#> 269 270
#> 270 271
#> 271 272
#> 272 273
#> 273 274
#> 274 275
#> 275 276
#> 276 277
#> 277 278
#> 278 279
#> 279 280
#> 280 281
#> 281 282
#> 282 283
#> 283 284
#> 284 285
#> 285 286
#> 286 287
#> 287 288
#> 288 289
#> 289 290
#> 290 291
#> 291 292
#> 292 293
#> 293 294
#> 294 295
#> 295 296
#> 296 297
#> 297 298
#> 298 299
#> 299 300
#> 300 301
#> 301 302
#> 302 303
#> 303 304
#> 304 305
#> 305 306
#> 306 307
#> 307 308
#> 308 309
#> 309 310
#> 310 311
#> 311 312
#> 312 313
#> 313 314
#> 314 315
#> 315 316
#> 316 317
#> 317 318
#> 318 319
#> 319 320
#> 320 321
#> 321 322
#> 322 323
#> 323 324
#> 324 325
#> 325 326
#> 326 327
#> 327 328
#> 328 329
#> 329 330
#> 330 331
#> 331 332
#> 332 333
#> 333 334
#> 334 335
#> 335 336
#> 336 337
#> 337 338
#> 338 339
#> 339 340
#> 340 341
#> 341 342
#> 342 343
#> 343 344
#> 344 345
#> 345 346
#> 346 347
#> 347 348
#> 348 349
#> 349 350
#> 350 351
#> 351 352
#> 352 353
#> 353 354
#> 354 355
#> 355 356
#> 356 357
#> 357 358
#> 358 359
#> 359 360
#> 360 361
#> 361 362
#> 362 363
#> 363 364
#> 364 365
#> 365 366
#> 366 367
#> 367 368
#> 368 369
#> 369 370
#> 370 371
#> 371 372
#> 372 373
#> 373 374
#> 374 375
#> 375 376
#> 376 377
#> 377 378
#> 378 379
#> 379 380
#> 380 381
#> 381 382
#> 382 383
#> 383 384
#> 384 385
#> 385 386
#> 386 387
#> 387 388
#> 388 389
#> 389 390
#> 390 391
#> 391 392
#> 392 393
#> 393 394
#> 394 395
#> 395 396
#> 396 397
#> 397 398
#> 398 399
#> 399 400
#> 400 401
#> 401 402
#> 402 403
#> 403 404
#> 404 405
#> 405 406
#> 406 407
#> 407 408
#> 408 409
#> 409 410
#> 410 411
#> 411 412
#> 412 413
#> 413 414
#> 414 415
#> 415 416
#> 416 417
#> 417 418
#> 418 419
#> 419 420
#> 420 421
#> 421 422
#> 422 423
#> 423 424
#> 424 425
#> 425 426
#> 426 427
#> 427 428
#> 428 429
#> 429 430
#> 430 431
#> 431 432
#> 432 433
#> 433 434
#> 434 435
#> 435 436
#> 436 437
#> 437 438
#> 438 439
#> 439 440
#> 440 441
#> 441 442
#> 442 443
#> 443 444
#> 444 445
#> 445 446
#> 446 447
#> 447 448
#> 448 449
#> 449 450
#> 450 451
#> 451 452
#> 452 453
#> 453 454
#> 454 455
#> 455 456
#> 456 457
#> 457 458
#> 458 459
#> 459 460
#> 460 461
#> 461 462
#> 462 463
#> 463 464
#> 464 465
#> 465 466
#> 466 467
#> 467 468
#> 468 469
#> 469 470
#> 470 471
#> 471 472
#> 472 473
#> 473 474
#> 474 475
#> 475 476
#> 476 477
#> 477 478
#> 478 479
#> 479 480
#> 480 481
#> 481 482
#> 482 483
#> 483 484
#> 484 485
#> 485 486
#> 486 487
#> 487 488
#> 488 489
#> 489 490
#> 490 491
#> 491 492
#> 492 493
#> 493 494
#> 494 495
#> 495 496
#> 496 498
#> 497 499
#> 498 500
#> 499 501
#> 500 502
#> 501 503
#> 502 504
#> 503 505
#> 504 506
#> 505 507
#> 506 508
#> 507 509
#> 508 510
#> 509 511
#> 510 512
#> 511 513
#> 512 514
#> 513 515
#> 514 516
#> 515 517
#> 516 518
#> 517 519
#> 518 520
#> 519 521
#> 520 522
#> 521 523
#> 522 524
#> 523 525
#> 524 526
#> 525 527
#> 526 528
#> 527 529
#> 528 530
#> 529 531
#> 530 532
#> 531 533
#> 532 534
#> 533 535
#> 534 536
#> 535 537
#> 536 538
#> 537 539
#> 538 540
#> 539 541
#> 540 542
#> 541 543
#> 542 544
#> 543 545
#> 544 546
#> 545 547
#> 546 548
#> 547 549
#> 548 550
#> 549 551
#> 550 552
#> 551 553
#> 552 554
#> 553 555
#> 554 556
#> 555 557
#> 556 558
#> 557 559
#> 558 560
#> 559 561
#> 560 562
#> 561 563
#> 562 564
#> 563 565
#> 564 566
#> 565 567
#> 566 568
#> 567 569
#> 568 570
#> 569 571
#> 570 572
#> 571 573
#> 572 574
#> 573 575
#> 574 576
#> 575 577
#> 576 578
#> 577 579
#> 578 580
#> 579 581
#> 580 582
#> 581 583
#> 582 584
#> 583 585
#> 584 586
#> 585 587
#> 586 588
#> 587 589
#> 588 590
#> 589 591
#> 590 592
#> 591 593
#> 592 594
#> 593 595
#> 594 596
#> 595 597
#> 596 598
#> 597 599
#> 598 600
#> 599 601
#> 600 602
#> 601 603
#> 602 604
#> 603 605
#> 604 606
#> 605 607
#> 606 608
#> 607 609
#> 608 610
#> 609 611
#> 610 612
#> 611 613
#> 612 614
#> 613 615
#> 614 616
#> 615 617
#> 616 618
#> 617 619
#> 618 620
#> 619 621
#> 620 622
#> 621 623
#> 622 624
#> 623 625
#> 624 626
#> 625 627
#> 626 628
#> 627 629
#> 628 630
#> 629 631
#> 630 632
#> 631 633
#> 632 634
#> 633 635
#> 634 636
#> 635 637
#> 636 638
#> 637 639
#> 638 640
#> 639 641
#> 640 642
#> 641 643
#> 642 644
#> 643 645
#> 644 646
#> 645 647
#> 646 648
#> 647 649
#> 648 650
#> 649 651
#> 650 652
#> 651 653
#> 652 654
#> 653 655
#> 654 656
#> 655 657
#> 656 658
#> 657 659
#> 658 660
#> 659 661
#> 660 662
#> 661 663
#> 662 664
#> 663 665
#> 664 666
#> 665 667
#> 666 668
#> 667 669
#> 668 670
#> 669 671
#> 670 672
#> 671 673
#> 672 674
#> 673 675
#> 674 676
#> 675 677
#> 676 678
#> 677 679
#> 678 680
#> 679 681
#> 680 683
#> 681 684
#> 682 685
#> 683 686
#> 684 687
#> 685 688
#> 686 689
#> 687 690
#> 688 691
#> 689 692
#> 690 693
#> 691 694
#> 692 695
#> 693 696
#> 694 697
#> 695 698
#> 696 699
#> 697 700
#> 698 701
#> 699 702
#> 700 703
#> 701 704
#> 702 705
#> 703 706
#> 704 707
#> 705 708
#> 706 709
#> 707 710
#> 708 711
#> 709 712
#> 710 713
#> 711 714
#> 712 715
#> 713 716
#> 714 717
#> 715 718
#> 716 719
#> 717 720
#> 718 721
#> 719 722
#> 720 723
#> 721 724
#> 722 725
#> 723 726
#> 724 727
#> 725 728
#> 726 729
#> 727 730
#> 728 731
#> 729 732
#> 730 733
#> 731 734
#> 732 735
#> 733 736
#> 734 737
#> 735 738
#> 736 739
#> 737 740
#> 738 741
#> 739 742
#> 740 743
#> 741 744
#> 742 745
#> 743 746
#> 744 747
#> 745 748
#> 746 749
#> 747 750
#> 748 751
#> 749 752
#> 750 753
#> 751 754
#> 752 755
#> 753 756
#> 754 757
#> 755 758
#> 756 759
#> 757 760
#> 758 761
#> 759 762
#> 760 763
#> 761 764
#> 762 765
#> 763 766
#> 764 767
#> 765 768
#> 766 769
#> 767 770
#> 768 771
#> 769 772
#> 770 773
#> 771 774
#> 772 775
#> 773 776
#> 774 777
#> 775 778
#> 776 779
#> 777 780
#> 778 781
#> 779 782
#> 780 783
#> 781 784
#> 782 785
#> 783 786
#> 784 787
#> 785 788
#> 786 789
#> 787 790
#> 788 791
#> 789 792
#> 790 793
#> 791 794
#> 792 795
#> 793 796
#> 794 797
#> 795 798
#> 796 799
#> 797 800
#> 798 801
#> 799 802
#> 800 803
#> 801 804
#> 802 805
#> 803 806
#> 804 807
#> 805 808
#> 806 809
#> 807 810
#> 808 811
#> 809 812
#> 810 813
#> 811 814
#> 812 815
#> 813 816
#> 814 817
#> 815 818
#> 816 819
#> 817 820
#> 818 821
#> 819 822
#> 820 823
#> 821 824
#> 822 825
#> 823 826
#> 824 827
#> 825 828
#> 826 829
#> 827 830
#> 828 831
#> 829 832
#> 830 833
#> 831 834
#> 832 835
#> 833 836
#> 834 837
#> 835 838
#> 836 839
#> 837 840
#> 838 841
#> 839 842
#> 840 843
#> 841 844
#> 842 845
#> 843 846
#> 844 847
#> 845 848
#> 846 849
#> 847 850
#> 848 851
#> 849 852
#> 850 853
#> 851 854
#> 852 855
#> 853 856
#> 854 857
#> 855 858
#> 856 859
#> 857 860
#> 858 861
#> 859 862
#> 860 863
#> 861 864
#> 862 865
#> 863 866
#> 864 867
#> 865 868
#> 866 869
#> 867 870
#> 868 871
#> 869 872
#> 870 873
#> 871 874
#> 872 875
#> 873 876
#> 874 877
#> 875 878
#> 876 879
#> 877 880
#> 878 881
#> 879 882
#> 880 883
#> 881 884
#> 882 885
#> 883 886
#> 884 887
#> 885 888
#> 886 889
#> 887 890
#> 888 891
#> 889 892
#> 890 893
#> 891 894
#> 892 895
#> 893 896
#> 894 897
#> 895 898
#> 896 899
#> 897 900
#> 898 901
#> 899 902
#> 900 903
#> 901 904
#> 902 905
#> 903 906
#> 904 907
#> 905 908
#> 906 909
#> 907 910
#> 908 911
#> 909 912
#> 910 913
#> 911 914
#> 912 915
#> 913 916
#> 914 917
#> 915 918
#> 916 919
#> 917 920
#> 918 921
#> 919 922
#> 920 923
#> 921 924
#> 922 925
#> 923 926
#> 924 927
#> 925 928
#> 926 929
#> 927 930
#> 928 931
#> 929 932
#> 930 933
#> 931 934
#> 932 935
#> 933 936
#> 934 937
#> 935 938
#> 936 939
#> 937 940
#> 938 941
#> 939 942
#> 940 943
#> 941 944
#> 942 945
#> 943 946
#> 944 947
#> 945 948
#> 946 949
#> 947 950
#> 948 951
#> 949 952
#> 950 953
#> 951 954
#> 952 955
#> 953 956
#> 954 957
#> 955 958
#> 956 959
#> 957 960
#> 958 961
#> 959 962
#> 960 963
#> 961 964
#> 962 965
#> 963 966
#> 964 967
#> 965 968
#> 966 969
#> 967 970
#> 968 971
#> 969 972
#> 970 973
#> 971 974
#> 972 975
#> 973 976
#> 974 977
#> 975 978
#> 976 979
#> 977 980
#> 978 981
#> 979 982
#> 980 983
#> 981 984
#> 982 985
#> 983 986
#> 984 987
#> 985 988
#> 986 989
#> 987 990
#> 988 991
#> 989 992
#> 990 993
#> 991 994
#> 992 995
#> 993 996
#> 994 997
#> 995 998
#> 996 999
#> 997 1000
sessionInfo()
#> R version 4.0.3 (2020-10-10)
#> Platform: x86_64-w64-mingw32/x64 (64-bit)
#> Running under: Windows 10 x64 (build 19042)
#>
#> Matrix products: default
#>
#> locale:
#> [1] LC_COLLATE=Portuguese_Brazil.1252 LC_CTYPE=Portuguese_Brazil.1252
#> [3] LC_MONETARY=Portuguese_Brazil.1252 LC_NUMERIC=C
#> [5] LC_TIME=Portuguese_Brazil.1252
#>
#> attached base packages:
#> [1] stats graphics grDevices utils datasets methods base
#>
#> other attached packages:
#> [1] purrr_0.3.4 magrittr_2.0.1 furrr_0.2.2 future_1.21.0
#> [5] RSQLite_2.2.3.9000 DBI_1.1.1
#>
#> loaded via a namespace (and not attached):
#> [1] Rcpp_1.0.6 pillar_1.5.1 compiler_4.0.3 highr_0.8
#> [5] tools_4.0.3 digest_0.6.27 bit_4.0.4 evaluate_0.14
#> [9] memoise_2.0.0 lifecycle_1.0.0 tibble_3.1.0 debugme_1.1.0
#> [13] pkgconfig_2.0.3 rlang_0.4.10 reprex_1.0.0 parallel_4.0.3
#> [17] yaml_2.2.1 xfun_0.21 fastmap_1.1.0 styler_1.3.2
#> [21] stringr_1.4.0 knitr_1.31 fs_1.5.0 vctrs_0.3.6
#> [25] globals_0.14.0 bit64_4.0.5 glue_1.4.2 listenv_0.8.0
#> [29] parallelly_1.23.0 fansi_0.4.2 rmarkdown_2.7 blob_1.2.1
#> [33] backports_1.2.1 codetools_0.2-18 ellipsis_0.3.1 htmltools_0.5.1.1
#> [37] utf8_1.1.4 stringi_1.5.3 cachem_1.0.4 crayon_1.4.1
Created on 2021-03-08 by the reprex package (v1.0.0)
With 5 seconds of pause. There is a loss of 3 writes to SQLite.
You did not set the busy timeout at all in your code seemingly? Btw. that PR does not change anything for Windows. Windows did not have this issue, you just had to set the busy timeout, I think.
How do I set the busy time?
Did I correctly define busy time with DBI :: dbExecute (conn," PRAGMA busy_timeout = 4000 ")
?
All recordings made successfully.
# Package RSQLite Installed from: remotes::install_github("gaborcsardi/RSQLite")
library(DBI)
library(RSQLite)
library(furrr)
#> Carregando pacotes exigidos: future
library(future)
library(magrittr)
library(purrr)
#>
#> Attaching package: 'purrr'
#> The following object is masked from 'package:magrittr':
#>
#> set_names
########################################################
n_teste <- 1:1000
unlink("bd_test.db")
connect_sgbd <- function() {
conexao <- DBI::dbConnect(RSQLite::SQLite(),
dbname = file.path("bd_test.db")
)
return(conexao)
}
teste_write_sqlite <- function(n_teste) {
tb_teste_iris <- iris[1, ] %>%
dplyr::mutate(n_loop = n_teste)
# 4 seconds pause
tentativas <- purrr::rate_delay(pause = 4,
max_times = 20
)
insist_execute_sqlite <- purrr::insistently(DBI::dbExecute,
tentativas,
quiet = FALSE
)
insist_dbWriteTable <- purrr::insistently(DBI::dbWriteTable,
tentativas,
quiet = FALSE
)
conn <- connect_sgbd()
DBI::dbExecute(conn, "PRAGMA busy_timeout = 4000")
on.exit(dbDisconnect(conn))
tryCatch(
{
insist_execute_sqlite(conn, "BEGIN IMMEDIATE TRANSACTION")
# Rollback on failure
on.exit(try(dbExecute(conn, "ROLLBACK TRANSACTION")))
out <- insist_dbWriteTable(conn, "tb_teste_iris", tb_teste_iris, append = TRUE)
dbExecute(conn, "COMMIT TRANSACTION")
# Don't rollback on success
on.exit(NULL)
print(paste(n_teste, "-", out))
},
error = function(e) {
print(paste(n_teste, "-", conditionMessage(e)))
}
)
}
future::plan("multisession",
workers = 8
)
options(future.rng.onMisuse = "ignore")
furrr::future_walk(n_teste, teste_write_sqlite, .progress = TRUE)
#> [1] "1 - TRUE"
#> [1] "2 - TRUE"
#> [1] "3 - TRUE"
#> [1] "4 - TRUE"
#> [1] "5 - TRUE"
#> [1] "6 - TRUE"
#> [1] "7 - TRUE"
#> [1] "8 - TRUE"
#> [1] "9 - TRUE"
#> [1] "10 - TRUE"
#> [1] "11 - TRUE"
#> [1] "12 - TRUE"
#> [1] "13 - TRUE"
#> [1] "14 - TRUE"
#> [1] "15 - TRUE"
#> [1] "16 - TRUE"
#> [1] "17 - TRUE"
#> [1] "18 - TRUE"
#> [1] "19 - TRUE"
#> [1] "20 - TRUE"
#> [1] "21 - TRUE"
#> [1] "22 - TRUE"
#> [1] "23 - TRUE"
#> [1] "24 - TRUE"
#> [1] "25 - TRUE"
#> [1] "26 - TRUE"
#> [1] "27 - TRUE"
#> [1] "28 - TRUE"
#> [1] "29 - TRUE"
#> [1] "30 - TRUE"
#> [1] "31 - TRUE"
#> [1] "32 - TRUE"
#> [1] "33 - TRUE"
#> [1] "34 - TRUE"
#> [1] "35 - TRUE"
#> [1] "36 - TRUE"
#> [1] "37 - TRUE"
#> [1] "38 - TRUE"
#> [1] "39 - TRUE"
#> [1] "40 - TRUE"
#> [1] "41 - TRUE"
#> [1] "42 - TRUE"
#> [1] "43 - TRUE"
#> [1] "44 - TRUE"
#> [1] "45 - TRUE"
#> [1] "46 - TRUE"
#> [1] "47 - TRUE"
#> [1] "48 - TRUE"
#> [1] "49 - TRUE"
#> [1] "50 - TRUE"
#> [1] "51 - TRUE"
#> [1] "52 - TRUE"
#> [1] "53 - TRUE"
#> [1] "54 - TRUE"
#> [1] "55 - TRUE"
#> [1] "56 - TRUE"
#> [1] "57 - TRUE"
#> [1] "58 - TRUE"
#> [1] "59 - TRUE"
#> [1] "60 - TRUE"
#> [1] "61 - TRUE"
#> [1] "62 - TRUE"
#> [1] "63 - TRUE"
#> [1] "64 - TRUE"
#> [1] "65 - TRUE"
#> [1] "66 - TRUE"
#> [1] "67 - TRUE"
#> [1] "68 - TRUE"
#> [1] "69 - TRUE"
#> [1] "70 - TRUE"
#> [1] "71 - TRUE"
#> [1] "72 - TRUE"
#> [1] "73 - TRUE"
#> [1] "74 - TRUE"
#> [1] "75 - TRUE"
#> [1] "76 - TRUE"
#> [1] "77 - TRUE"
#> [1] "78 - TRUE"
#> [1] "79 - TRUE"
#> [1] "80 - TRUE"
#> [1] "81 - TRUE"
#> [1] "82 - TRUE"
#> [1] "83 - TRUE"
#> [1] "84 - TRUE"
#> [1] "85 - TRUE"
#> [1] "86 - TRUE"
#> [1] "87 - TRUE"
#> [1] "88 - TRUE"
#> [1] "89 - TRUE"
#> [1] "90 - TRUE"
#> [1] "91 - TRUE"
#> [1] "92 - TRUE"
#> [1] "93 - TRUE"
#> [1] "94 - TRUE"
#> [1] "95 - TRUE"
#> [1] "96 - TRUE"
#> [1] "97 - TRUE"
#> [1] "98 - TRUE"
#> [1] "99 - TRUE"
#> [1] "100 - TRUE"
#> [1] "101 - TRUE"
#> [1] "102 - TRUE"
#> [1] "103 - TRUE"
#> [1] "104 - TRUE"
#> [1] "105 - TRUE"
#> [1] "106 - TRUE"
#> [1] "107 - TRUE"
#> [1] "108 - TRUE"
#> [1] "109 - TRUE"
#> [1] "110 - TRUE"
#> [1] "111 - TRUE"
#> [1] "112 - TRUE"
#> [1] "113 - TRUE"
#> [1] "114 - TRUE"
#> [1] "115 - TRUE"
#> [1] "116 - TRUE"
#> [1] "117 - TRUE"
#> [1] "118 - TRUE"
#> [1] "119 - TRUE"
#> [1] "120 - TRUE"
#> [1] "121 - TRUE"
#> [1] "122 - TRUE"
#> [1] "123 - TRUE"
#> [1] "124 - TRUE"
#> [1] "125 - TRUE"
#> Warning: Couldn't set synchronous mode: database is locked
#> Use `synchronous` = NULL to turn off this warning.
#> [1] "126 - TRUE"
#> [1] "127 - TRUE"
#> [1] "128 - TRUE"
#> [1] "129 - TRUE"
#> [1] "130 - TRUE"
#> [1] "131 - TRUE"
#> [1] "132 - TRUE"
#> [1] "133 - TRUE"
#> [1] "134 - TRUE"
#> [1] "135 - TRUE"
#> [1] "136 - TRUE"
#> [1] "137 - TRUE"
#> [1] "138 - TRUE"
#> [1] "139 - TRUE"
#> [1] "140 - TRUE"
#> [1] "141 - TRUE"
#> [1] "142 - TRUE"
#> [1] "143 - TRUE"
#> [1] "144 - TRUE"
#> [1] "145 - TRUE"
#> [1] "146 - TRUE"
#> [1] "147 - TRUE"
#> [1] "148 - TRUE"
#> [1] "149 - TRUE"
#> [1] "150 - TRUE"
#> [1] "151 - TRUE"
#> [1] "152 - TRUE"
#> [1] "153 - TRUE"
#> [1] "154 - TRUE"
#> [1] "155 - TRUE"
#> [1] "156 - TRUE"
#> [1] "157 - TRUE"
#> [1] "158 - TRUE"
#> [1] "159 - TRUE"
#> [1] "160 - TRUE"
#> [1] "161 - TRUE"
#> [1] "162 - TRUE"
#> [1] "163 - TRUE"
#> [1] "164 - TRUE"
#> [1] "165 - TRUE"
#> [1] "166 - TRUE"
#> [1] "167 - TRUE"
#> [1] "168 - TRUE"
#> [1] "169 - TRUE"
#> [1] "170 - TRUE"
#> [1] "171 - TRUE"
#> [1] "172 - TRUE"
#> [1] "173 - TRUE"
#> [1] "174 - TRUE"
#> [1] "175 - TRUE"
#> [1] "176 - TRUE"
#> [1] "177 - TRUE"
#> [1] "178 - TRUE"
#> [1] "179 - TRUE"
#> [1] "180 - TRUE"
#> [1] "181 - TRUE"
#> [1] "182 - TRUE"
#> [1] "183 - TRUE"
#> [1] "184 - TRUE"
#> [1] "185 - TRUE"
#> [1] "186 - TRUE"
#> [1] "187 - TRUE"
#> [1] "188 - TRUE"
#> [1] "189 - TRUE"
#> [1] "190 - TRUE"
#> [1] "191 - TRUE"
#> [1] "192 - TRUE"
#> [1] "193 - TRUE"
#> [1] "194 - TRUE"
#> [1] "195 - TRUE"
#> [1] "196 - TRUE"
#> [1] "197 - TRUE"
#> [1] "198 - TRUE"
#> [1] "199 - TRUE"
#> [1] "200 - TRUE"
#> [1] "201 - TRUE"
#> [1] "202 - TRUE"
#> [1] "203 - TRUE"
#> [1] "204 - TRUE"
#> [1] "205 - TRUE"
#> [1] "206 - TRUE"
#> [1] "207 - TRUE"
#> [1] "208 - TRUE"
#> [1] "209 - TRUE"
#> [1] "210 - TRUE"
#> [1] "211 - TRUE"
#> [1] "212 - TRUE"
#> [1] "213 - TRUE"
#> [1] "214 - TRUE"
#> [1] "215 - TRUE"
#> [1] "216 - TRUE"
#> [1] "217 - TRUE"
#> [1] "218 - TRUE"
#> [1] "219 - TRUE"
#> [1] "220 - TRUE"
#> [1] "221 - TRUE"
#> [1] "222 - TRUE"
#> [1] "223 - TRUE"
#> [1] "224 - TRUE"
#> [1] "225 - TRUE"
#> [1] "226 - TRUE"
#> [1] "227 - TRUE"
#> [1] "228 - TRUE"
#> [1] "229 - TRUE"
#> [1] "230 - TRUE"
#> [1] "231 - TRUE"
#> [1] "232 - TRUE"
#> [1] "233 - TRUE"
#> [1] "234 - TRUE"
#> [1] "235 - TRUE"
#> [1] "236 - TRUE"
#> [1] "237 - TRUE"
#> [1] "238 - TRUE"
#> [1] "239 - TRUE"
#> [1] "240 - TRUE"
#> [1] "241 - TRUE"
#> [1] "242 - TRUE"
#> [1] "243 - TRUE"
#> [1] "244 - TRUE"
#> [1] "245 - TRUE"
#> [1] "246 - TRUE"
#> [1] "247 - TRUE"
#> [1] "248 - TRUE"
#> [1] "249 - TRUE"
#> [1] "250 - TRUE"
#> [1] "251 - TRUE"
#> [1] "252 - TRUE"
#> [1] "253 - TRUE"
#> [1] "254 - TRUE"
#> [1] "255 - TRUE"
#> [1] "256 - TRUE"
#> [1] "257 - TRUE"
#> [1] "258 - TRUE"
#> [1] "259 - TRUE"
#> [1] "260 - TRUE"
#> [1] "261 - TRUE"
#> [1] "262 - TRUE"
#> [1] "263 - TRUE"
#> [1] "264 - TRUE"
#> [1] "265 - TRUE"
#> [1] "266 - TRUE"
#> [1] "267 - TRUE"
#> [1] "268 - TRUE"
#> [1] "269 - TRUE"
#> [1] "270 - TRUE"
#> [1] "271 - TRUE"
#> [1] "272 - TRUE"
#> [1] "273 - TRUE"
#> [1] "274 - TRUE"
#> [1] "275 - TRUE"
#> [1] "276 - TRUE"
#> [1] "277 - TRUE"
#> [1] "278 - TRUE"
#> [1] "279 - TRUE"
#> [1] "280 - TRUE"
#> [1] "281 - TRUE"
#> [1] "282 - TRUE"
#> [1] "283 - TRUE"
#> [1] "284 - TRUE"
#> [1] "285 - TRUE"
#> [1] "286 - TRUE"
#> [1] "287 - TRUE"
#> [1] "288 - TRUE"
#> [1] "289 - TRUE"
#> [1] "290 - TRUE"
#> [1] "291 - TRUE"
#> [1] "292 - TRUE"
#> [1] "293 - TRUE"
#> [1] "294 - TRUE"
#> [1] "295 - TRUE"
#> [1] "296 - TRUE"
#> [1] "297 - TRUE"
#> [1] "298 - TRUE"
#> [1] "299 - TRUE"
#> [1] "300 - TRUE"
#> [1] "301 - TRUE"
#> [1] "302 - TRUE"
#> [1] "303 - TRUE"
#> [1] "304 - TRUE"
#> [1] "305 - TRUE"
#> [1] "306 - TRUE"
#> [1] "307 - TRUE"
#> [1] "308 - TRUE"
#> [1] "309 - TRUE"
#> [1] "310 - TRUE"
#> [1] "311 - TRUE"
#> [1] "312 - TRUE"
#> [1] "313 - TRUE"
#> [1] "314 - TRUE"
#> [1] "315 - TRUE"
#> [1] "316 - TRUE"
#> [1] "317 - TRUE"
#> [1] "318 - TRUE"
#> [1] "319 - TRUE"
#> [1] "320 - TRUE"
#> [1] "321 - TRUE"
#> [1] "322 - TRUE"
#> [1] "323 - TRUE"
#> [1] "324 - TRUE"
#> [1] "325 - TRUE"
#> [1] "326 - TRUE"
#> [1] "327 - TRUE"
#> [1] "328 - TRUE"
#> [1] "329 - TRUE"
#> [1] "330 - TRUE"
#> [1] "331 - TRUE"
#> [1] "332 - TRUE"
#> [1] "333 - TRUE"
#> [1] "334 - TRUE"
#> [1] "335 - TRUE"
#> [1] "336 - TRUE"
#> [1] "337 - TRUE"
#> [1] "338 - TRUE"
#> [1] "339 - TRUE"
#> [1] "340 - TRUE"
#> [1] "341 - TRUE"
#> [1] "342 - TRUE"
#> [1] "343 - TRUE"
#> [1] "344 - TRUE"
#> [1] "345 - TRUE"
#> [1] "346 - TRUE"
#> [1] "347 - TRUE"
#> [1] "348 - TRUE"
#> [1] "349 - TRUE"
#> [1] "350 - TRUE"
#> [1] "351 - TRUE"
#> [1] "352 - TRUE"
#> [1] "353 - TRUE"
#> [1] "354 - TRUE"
#> [1] "355 - TRUE"
#> [1] "356 - TRUE"
#> [1] "357 - TRUE"
#> [1] "358 - TRUE"
#> [1] "359 - TRUE"
#> [1] "360 - TRUE"
#> [1] "361 - TRUE"
#> [1] "362 - TRUE"
#> [1] "363 - TRUE"
#> [1] "364 - TRUE"
#> [1] "365 - TRUE"
#> [1] "366 - TRUE"
#> [1] "367 - TRUE"
#> [1] "368 - TRUE"
#> [1] "369 - TRUE"
#> [1] "370 - TRUE"
#> [1] "371 - TRUE"
#> [1] "372 - TRUE"
#> [1] "373 - TRUE"
#> [1] "374 - TRUE"
#> [1] "375 - TRUE"
#> Error: database is locked
#> Retrying in 4 seconds.
#> [1] "376 - TRUE"
#> [1] "377 - TRUE"
#> [1] "378 - TRUE"
#> [1] "379 - TRUE"
#> [1] "380 - TRUE"
#> [1] "381 - TRUE"
#> [1] "382 - TRUE"
#> [1] "383 - TRUE"
#> [1] "384 - TRUE"
#> [1] "385 - TRUE"
#> [1] "386 - TRUE"
#> [1] "387 - TRUE"
#> [1] "388 - TRUE"
#> [1] "389 - TRUE"
#> [1] "390 - TRUE"
#> [1] "391 - TRUE"
#> [1] "392 - TRUE"
#> [1] "393 - TRUE"
#> [1] "394 - TRUE"
#> [1] "395 - TRUE"
#> [1] "396 - TRUE"
#> [1] "397 - TRUE"
#> [1] "398 - TRUE"
#> [1] "399 - TRUE"
#> [1] "400 - TRUE"
#> [1] "401 - TRUE"
#> [1] "402 - TRUE"
#> [1] "403 - TRUE"
#> [1] "404 - TRUE"
#> [1] "405 - TRUE"
#> [1] "406 - TRUE"
#> [1] "407 - TRUE"
#> [1] "408 - TRUE"
#> [1] "409 - TRUE"
#> [1] "410 - TRUE"
#> [1] "411 - TRUE"
#> [1] "412 - TRUE"
#> [1] "413 - TRUE"
#> [1] "414 - TRUE"
#> [1] "415 - TRUE"
#> [1] "416 - TRUE"
#> [1] "417 - TRUE"
#> [1] "418 - TRUE"
#> [1] "419 - TRUE"
#> [1] "420 - TRUE"
#> [1] "421 - TRUE"
#> [1] "422 - TRUE"
#> [1] "423 - TRUE"
#> [1] "424 - TRUE"
#> [1] "425 - TRUE"
#> [1] "426 - TRUE"
#> [1] "427 - TRUE"
#> [1] "428 - TRUE"
#> [1] "429 - TRUE"
#> [1] "430 - TRUE"
#> [1] "431 - TRUE"
#> [1] "432 - TRUE"
#> [1] "433 - TRUE"
#> [1] "434 - TRUE"
#> [1] "435 - TRUE"
#> [1] "436 - TRUE"
#> [1] "437 - TRUE"
#> [1] "438 - TRUE"
#> [1] "439 - TRUE"
#> [1] "440 - TRUE"
#> [1] "441 - TRUE"
#> [1] "442 - TRUE"
#> [1] "443 - TRUE"
#> [1] "444 - TRUE"
#> [1] "445 - TRUE"
#> [1] "446 - TRUE"
#> [1] "447 - TRUE"
#> [1] "448 - TRUE"
#> [1] "449 - TRUE"
#> [1] "450 - TRUE"
#> [1] "451 - TRUE"
#> [1] "452 - TRUE"
#> [1] "453 - TRUE"
#> [1] "454 - TRUE"
#> [1] "455 - TRUE"
#> [1] "456 - TRUE"
#> [1] "457 - TRUE"
#> [1] "458 - TRUE"
#> [1] "459 - TRUE"
#> [1] "460 - TRUE"
#> [1] "461 - TRUE"
#> [1] "462 - TRUE"
#> [1] "463 - TRUE"
#> [1] "464 - TRUE"
#> [1] "465 - TRUE"
#> [1] "466 - TRUE"
#> [1] "467 - TRUE"
#> [1] "468 - TRUE"
#> [1] "469 - TRUE"
#> [1] "470 - TRUE"
#> [1] "471 - TRUE"
#> [1] "472 - TRUE"
#> [1] "473 - TRUE"
#> [1] "474 - TRUE"
#> [1] "475 - TRUE"
#> [1] "476 - TRUE"
#> [1] "477 - TRUE"
#> [1] "478 - TRUE"
#> [1] "479 - TRUE"
#> [1] "480 - TRUE"
#> [1] "481 - TRUE"
#> [1] "482 - TRUE"
#> [1] "483 - TRUE"
#> [1] "484 - TRUE"
#> [1] "485 - TRUE"
#> [1] "486 - TRUE"
#> [1] "487 - TRUE"
#> [1] "488 - TRUE"
#> [1] "489 - TRUE"
#> [1] "490 - TRUE"
#> [1] "491 - TRUE"
#> [1] "492 - TRUE"
#> [1] "493 - TRUE"
#> [1] "494 - TRUE"
#> [1] "495 - TRUE"
#> [1] "496 - TRUE"
#> [1] "497 - TRUE"
#> [1] "498 - TRUE"
#> [1] "499 - TRUE"
#> [1] "500 - TRUE"
#> [1] "501 - TRUE"
#> [1] "502 - TRUE"
#> [1] "503 - TRUE"
#> [1] "504 - TRUE"
#> [1] "505 - TRUE"
#> [1] "506 - TRUE"
#> [1] "507 - TRUE"
#> [1] "508 - TRUE"
#> [1] "509 - TRUE"
#> [1] "510 - TRUE"
#> [1] "511 - TRUE"
#> [1] "512 - TRUE"
#> [1] "513 - TRUE"
#> [1] "514 - TRUE"
#> [1] "515 - TRUE"
#> [1] "516 - TRUE"
#> [1] "517 - TRUE"
#> [1] "518 - TRUE"
#> [1] "519 - TRUE"
#> [1] "520 - TRUE"
#> [1] "521 - TRUE"
#> [1] "522 - TRUE"
#> [1] "523 - TRUE"
#> [1] "524 - TRUE"
#> [1] "525 - TRUE"
#> [1] "526 - TRUE"
#> [1] "527 - TRUE"
#> [1] "528 - TRUE"
#> [1] "529 - TRUE"
#> [1] "530 - TRUE"
#> [1] "531 - TRUE"
#> [1] "532 - TRUE"
#> [1] "533 - TRUE"
#> [1] "534 - TRUE"
#> [1] "535 - TRUE"
#> [1] "536 - TRUE"
#> [1] "537 - TRUE"
#> [1] "538 - TRUE"
#> [1] "539 - TRUE"
#> [1] "540 - TRUE"
#> [1] "541 - TRUE"
#> [1] "542 - TRUE"
#> [1] "543 - TRUE"
#> [1] "544 - TRUE"
#> [1] "545 - TRUE"
#> [1] "546 - TRUE"
#> [1] "547 - TRUE"
#> [1] "548 - TRUE"
#> [1] "549 - TRUE"
#> [1] "550 - TRUE"
#> [1] "551 - TRUE"
#> [1] "552 - TRUE"
#> [1] "553 - TRUE"
#> [1] "554 - TRUE"
#> [1] "555 - TRUE"
#> [1] "556 - TRUE"
#> [1] "557 - TRUE"
#> [1] "558 - TRUE"
#> [1] "559 - TRUE"
#> [1] "560 - TRUE"
#> [1] "561 - TRUE"
#> [1] "562 - TRUE"
#> [1] "563 - TRUE"
#> [1] "564 - TRUE"
#> [1] "565 - TRUE"
#> [1] "566 - TRUE"
#> [1] "567 - TRUE"
#> [1] "568 - TRUE"
#> [1] "569 - TRUE"
#> [1] "570 - TRUE"
#> [1] "571 - TRUE"
#> [1] "572 - TRUE"
#> [1] "573 - TRUE"
#> [1] "574 - TRUE"
#> [1] "575 - TRUE"
#> [1] "576 - TRUE"
#> [1] "577 - TRUE"
#> [1] "578 - TRUE"
#> [1] "579 - TRUE"
#> [1] "580 - TRUE"
#> [1] "581 - TRUE"
#> [1] "582 - TRUE"
#> [1] "583 - TRUE"
#> [1] "584 - TRUE"
#> [1] "585 - TRUE"
#> [1] "586 - TRUE"
#> [1] "587 - TRUE"
#> [1] "588 - TRUE"
#> [1] "589 - TRUE"
#> [1] "590 - TRUE"
#> [1] "591 - TRUE"
#> [1] "592 - TRUE"
#> [1] "593 - TRUE"
#> [1] "594 - TRUE"
#> [1] "595 - TRUE"
#> [1] "596 - TRUE"
#> [1] "597 - TRUE"
#> [1] "598 - TRUE"
#> [1] "599 - TRUE"
#> [1] "600 - TRUE"
#> [1] "601 - TRUE"
#> [1] "602 - TRUE"
#> [1] "603 - TRUE"
#> [1] "604 - TRUE"
#> [1] "605 - TRUE"
#> [1] "606 - TRUE"
#> [1] "607 - TRUE"
#> [1] "608 - TRUE"
#> [1] "609 - TRUE"
#> [1] "610 - TRUE"
#> [1] "611 - TRUE"
#> [1] "612 - TRUE"
#> [1] "613 - TRUE"
#> [1] "614 - TRUE"
#> [1] "615 - TRUE"
#> [1] "616 - TRUE"
#> [1] "617 - TRUE"
#> [1] "618 - TRUE"
#> [1] "619 - TRUE"
#> [1] "620 - TRUE"
#> [1] "621 - TRUE"
#> [1] "622 - TRUE"
#> [1] "623 - TRUE"
#> [1] "624 - TRUE"
#> [1] "625 - TRUE"
#> [1] "626 - TRUE"
#> [1] "627 - TRUE"
#> [1] "628 - TRUE"
#> [1] "629 - TRUE"
#> [1] "630 - TRUE"
#> [1] "631 - TRUE"
#> [1] "632 - TRUE"
#> [1] "633 - TRUE"
#> [1] "634 - TRUE"
#> [1] "635 - TRUE"
#> [1] "636 - TRUE"
#> [1] "637 - TRUE"
#> [1] "638 - TRUE"
#> [1] "639 - TRUE"
#> [1] "640 - TRUE"
#> [1] "641 - TRUE"
#> [1] "642 - TRUE"
#> [1] "643 - TRUE"
#> [1] "644 - TRUE"
#> [1] "645 - TRUE"
#> [1] "646 - TRUE"
#> [1] "647 - TRUE"
#> [1] "648 - TRUE"
#> [1] "649 - TRUE"
#> [1] "650 - TRUE"
#> [1] "651 - TRUE"
#> [1] "652 - TRUE"
#> [1] "653 - TRUE"
#> [1] "654 - TRUE"
#> [1] "655 - TRUE"
#> [1] "656 - TRUE"
#> [1] "657 - TRUE"
#> [1] "658 - TRUE"
#> [1] "659 - TRUE"
#> [1] "660 - TRUE"
#> [1] "661 - TRUE"
#> [1] "662 - TRUE"
#> [1] "663 - TRUE"
#> [1] "664 - TRUE"
#> [1] "665 - TRUE"
#> [1] "666 - TRUE"
#> [1] "667 - TRUE"
#> [1] "668 - TRUE"
#> [1] "669 - TRUE"
#> [1] "670 - TRUE"
#> [1] "671 - TRUE"
#> [1] "672 - TRUE"
#> [1] "673 - TRUE"
#> [1] "674 - TRUE"
#> [1] "675 - TRUE"
#> [1] "676 - TRUE"
#> [1] "677 - TRUE"
#> [1] "678 - TRUE"
#> [1] "679 - TRUE"
#> [1] "680 - TRUE"
#> [1] "681 - TRUE"
#> [1] "682 - TRUE"
#> [1] "683 - TRUE"
#> [1] "684 - TRUE"
#> [1] "685 - TRUE"
#> [1] "686 - TRUE"
#> [1] "687 - TRUE"
#> [1] "688 - TRUE"
#> [1] "689 - TRUE"
#> [1] "690 - TRUE"
#> [1] "691 - TRUE"
#> [1] "692 - TRUE"
#> [1] "693 - TRUE"
#> [1] "694 - TRUE"
#> [1] "695 - TRUE"
#> [1] "696 - TRUE"
#> [1] "697 - TRUE"
#> [1] "698 - TRUE"
#> [1] "699 - TRUE"
#> [1] "700 - TRUE"
#> [1] "701 - TRUE"
#> [1] "702 - TRUE"
#> [1] "703 - TRUE"
#> [1] "704 - TRUE"
#> [1] "705 - TRUE"
#> [1] "706 - TRUE"
#> [1] "707 - TRUE"
#> [1] "708 - TRUE"
#> [1] "709 - TRUE"
#> [1] "710 - TRUE"
#> [1] "711 - TRUE"
#> [1] "712 - TRUE"
#> [1] "713 - TRUE"
#> [1] "714 - TRUE"
#> [1] "715 - TRUE"
#> [1] "716 - TRUE"
#> [1] "717 - TRUE"
#> [1] "718 - TRUE"
#> [1] "719 - TRUE"
#> [1] "720 - TRUE"
#> [1] "721 - TRUE"
#> [1] "722 - TRUE"
#> [1] "723 - TRUE"
#> [1] "724 - TRUE"
#> [1] "725 - TRUE"
#> [1] "726 - TRUE"
#> [1] "727 - TRUE"
#> [1] "728 - TRUE"
#> [1] "729 - TRUE"
#> [1] "730 - TRUE"
#> [1] "731 - TRUE"
#> [1] "732 - TRUE"
#> [1] "733 - TRUE"
#> [1] "734 - TRUE"
#> [1] "735 - TRUE"
#> [1] "736 - TRUE"
#> [1] "737 - TRUE"
#> [1] "738 - TRUE"
#> [1] "739 - TRUE"
#> [1] "740 - TRUE"
#> [1] "741 - TRUE"
#> [1] "742 - TRUE"
#> [1] "743 - TRUE"
#> [1] "744 - TRUE"
#> [1] "745 - TRUE"
#> [1] "746 - TRUE"
#> [1] "747 - TRUE"
#> [1] "748 - TRUE"
#> [1] "749 - TRUE"
#> [1] "750 - TRUE"
#> Error: database is locked
#> Retrying in 4 seconds.
#> [1] "751 - TRUE"
#> [1] "752 - TRUE"
#> [1] "753 - TRUE"
#> [1] "754 - TRUE"
#> [1] "755 - TRUE"
#> [1] "756 - TRUE"
#> [1] "757 - TRUE"
#> [1] "758 - TRUE"
#> [1] "759 - TRUE"
#> [1] "760 - TRUE"
#> [1] "761 - TRUE"
#> [1] "762 - TRUE"
#> [1] "763 - TRUE"
#> [1] "764 - TRUE"
#> [1] "765 - TRUE"
#> [1] "766 - TRUE"
#> [1] "767 - TRUE"
#> [1] "768 - TRUE"
#> [1] "769 - TRUE"
#> [1] "770 - TRUE"
#> [1] "771 - TRUE"
#> [1] "772 - TRUE"
#> [1] "773 - TRUE"
#> [1] "774 - TRUE"
#> [1] "775 - TRUE"
#> [1] "776 - TRUE"
#> [1] "777 - TRUE"
#> [1] "778 - TRUE"
#> [1] "779 - TRUE"
#> [1] "780 - TRUE"
#> [1] "781 - TRUE"
#> [1] "782 - TRUE"
#> [1] "783 - TRUE"
#> [1] "784 - TRUE"
#> [1] "785 - TRUE"
#> [1] "786 - TRUE"
#> [1] "787 - TRUE"
#> [1] "788 - TRUE"
#> [1] "789 - TRUE"
#> [1] "790 - TRUE"
#> [1] "791 - TRUE"
#> [1] "792 - TRUE"
#> [1] "793 - TRUE"
#> [1] "794 - TRUE"
#> [1] "795 - TRUE"
#> [1] "796 - TRUE"
#> [1] "797 - TRUE"
#> [1] "798 - TRUE"
#> [1] "799 - TRUE"
#> [1] "800 - TRUE"
#> [1] "801 - TRUE"
#> [1] "802 - TRUE"
#> [1] "803 - TRUE"
#> [1] "804 - TRUE"
#> [1] "805 - TRUE"
#> [1] "806 - TRUE"
#> [1] "807 - TRUE"
#> [1] "808 - TRUE"
#> [1] "809 - TRUE"
#> [1] "810 - TRUE"
#> [1] "811 - TRUE"
#> [1] "812 - TRUE"
#> [1] "813 - TRUE"
#> [1] "814 - TRUE"
#> [1] "815 - TRUE"
#> [1] "816 - TRUE"
#> [1] "817 - TRUE"
#> [1] "818 - TRUE"
#> [1] "819 - TRUE"
#> [1] "820 - TRUE"
#> [1] "821 - TRUE"
#> [1] "822 - TRUE"
#> [1] "823 - TRUE"
#> [1] "824 - TRUE"
#> [1] "825 - TRUE"
#> [1] "826 - TRUE"
#> [1] "827 - TRUE"
#> [1] "828 - TRUE"
#> [1] "829 - TRUE"
#> [1] "830 - TRUE"
#> [1] "831 - TRUE"
#> [1] "832 - TRUE"
#> [1] "833 - TRUE"
#> [1] "834 - TRUE"
#> [1] "835 - TRUE"
#> [1] "836 - TRUE"
#> [1] "837 - TRUE"
#> [1] "838 - TRUE"
#> [1] "839 - TRUE"
#> [1] "840 - TRUE"
#> [1] "841 - TRUE"
#> [1] "842 - TRUE"
#> [1] "843 - TRUE"
#> [1] "844 - TRUE"
#> [1] "845 - TRUE"
#> [1] "846 - TRUE"
#> [1] "847 - TRUE"
#> [1] "848 - TRUE"
#> [1] "849 - TRUE"
#> [1] "850 - TRUE"
#> [1] "851 - TRUE"
#> [1] "852 - TRUE"
#> [1] "853 - TRUE"
#> [1] "854 - TRUE"
#> [1] "855 - TRUE"
#> [1] "856 - TRUE"
#> [1] "857 - TRUE"
#> [1] "858 - TRUE"
#> [1] "859 - TRUE"
#> [1] "860 - TRUE"
#> [1] "861 - TRUE"
#> [1] "862 - TRUE"
#> [1] "863 - TRUE"
#> [1] "864 - TRUE"
#> [1] "865 - TRUE"
#> [1] "866 - TRUE"
#> [1] "867 - TRUE"
#> [1] "868 - TRUE"
#> [1] "869 - TRUE"
#> [1] "870 - TRUE"
#> [1] "871 - TRUE"
#> [1] "872 - TRUE"
#> [1] "873 - TRUE"
#> [1] "874 - TRUE"
#> [1] "875 - TRUE"
#> Warning: Couldn't set synchronous mode: database is locked
#> Use `synchronous` = NULL to turn off this warning.
#> Error: database is locked
#> Retrying in 4 seconds.
#> [1] "876 - TRUE"
#> [1] "877 - TRUE"
#> [1] "878 - TRUE"
#> [1] "879 - TRUE"
#> [1] "880 - TRUE"
#> [1] "881 - TRUE"
#> [1] "882 - TRUE"
#> [1] "883 - TRUE"
#> [1] "884 - TRUE"
#> [1] "885 - TRUE"
#> [1] "886 - TRUE"
#> [1] "887 - TRUE"
#> [1] "888 - TRUE"
#> [1] "889 - TRUE"
#> [1] "890 - TRUE"
#> [1] "891 - TRUE"
#> [1] "892 - TRUE"
#> [1] "893 - TRUE"
#> [1] "894 - TRUE"
#> [1] "895 - TRUE"
#> [1] "896 - TRUE"
#> [1] "897 - TRUE"
#> [1] "898 - TRUE"
#> [1] "899 - TRUE"
#> [1] "900 - TRUE"
#> [1] "901 - TRUE"
#> [1] "902 - TRUE"
#> [1] "903 - TRUE"
#> [1] "904 - TRUE"
#> [1] "905 - TRUE"
#> [1] "906 - TRUE"
#> [1] "907 - TRUE"
#> [1] "908 - TRUE"
#> [1] "909 - TRUE"
#> [1] "910 - TRUE"
#> [1] "911 - TRUE"
#> [1] "912 - TRUE"
#> [1] "913 - TRUE"
#> [1] "914 - TRUE"
#> [1] "915 - TRUE"
#> [1] "916 - TRUE"
#> [1] "917 - TRUE"
#> [1] "918 - TRUE"
#> [1] "919 - TRUE"
#> [1] "920 - TRUE"
#> [1] "921 - TRUE"
#> [1] "922 - TRUE"
#> [1] "923 - TRUE"
#> [1] "924 - TRUE"
#> [1] "925 - TRUE"
#> [1] "926 - TRUE"
#> [1] "927 - TRUE"
#> [1] "928 - TRUE"
#> [1] "929 - TRUE"
#> [1] "930 - TRUE"
#> [1] "931 - TRUE"
#> [1] "932 - TRUE"
#> [1] "933 - TRUE"
#> [1] "934 - TRUE"
#> [1] "935 - TRUE"
#> [1] "936 - TRUE"
#> [1] "937 - TRUE"
#> [1] "938 - TRUE"
#> [1] "939 - TRUE"
#> [1] "940 - TRUE"
#> [1] "941 - TRUE"
#> [1] "942 - TRUE"
#> [1] "943 - TRUE"
#> [1] "944 - TRUE"
#> [1] "945 - TRUE"
#> [1] "946 - TRUE"
#> [1] "947 - TRUE"
#> [1] "948 - TRUE"
#> [1] "949 - TRUE"
#> [1] "950 - TRUE"
#> [1] "951 - TRUE"
#> [1] "952 - TRUE"
#> [1] "953 - TRUE"
#> [1] "954 - TRUE"
#> [1] "955 - TRUE"
#> [1] "956 - TRUE"
#> [1] "957 - TRUE"
#> [1] "958 - TRUE"
#> [1] "959 - TRUE"
#> [1] "960 - TRUE"
#> [1] "961 - TRUE"
#> [1] "962 - TRUE"
#> [1] "963 - TRUE"
#> [1] "964 - TRUE"
#> [1] "965 - TRUE"
#> [1] "966 - TRUE"
#> [1] "967 - TRUE"
#> [1] "968 - TRUE"
#> [1] "969 - TRUE"
#> [1] "970 - TRUE"
#> [1] "971 - TRUE"
#> [1] "972 - TRUE"
#> [1] "973 - TRUE"
#> [1] "974 - TRUE"
#> [1] "975 - TRUE"
#> [1] "976 - TRUE"
#> [1] "977 - TRUE"
#> [1] "978 - TRUE"
#> [1] "979 - TRUE"
#> [1] "980 - TRUE"
#> [1] "981 - TRUE"
#> [1] "982 - TRUE"
#> [1] "983 - TRUE"
#> [1] "984 - TRUE"
#> [1] "985 - TRUE"
#> [1] "986 - TRUE"
#> [1] "987 - TRUE"
#> [1] "988 - TRUE"
#> [1] "989 - TRUE"
#> [1] "990 - TRUE"
#> [1] "991 - TRUE"
#> [1] "992 - TRUE"
#> [1] "993 - TRUE"
#> [1] "994 - TRUE"
#> [1] "995 - TRUE"
#> [1] "996 - TRUE"
#> [1] "997 - TRUE"
#> [1] "998 - TRUE"
#> [1] "999 - TRUE"
#> [1] "1000 - TRUE"
con <- dbConnect(RSQLite::SQLite(), dbname = file.path("bd_test.db"))
dbGetQuery(con, "SELECT n_loop FROM tb_teste_iris ORDER BY n_loop")
#> n_loop
#> 1 1
#> 2 2
#> 3 3
#> 4 4
#> 5 5
#> 6 6
#> 7 7
#> 8 8
#> 9 9
#> 10 10
#> 11 11
#> 12 12
#> 13 13
#> 14 14
#> 15 15
#> 16 16
#> 17 17
#> 18 18
#> 19 19
#> 20 20
#> 21 21
#> 22 22
#> 23 23
#> 24 24
#> 25 25
#> 26 26
#> 27 27
#> 28 28
#> 29 29
#> 30 30
#> 31 31
#> 32 32
#> 33 33
#> 34 34
#> 35 35
#> 36 36
#> 37 37
#> 38 38
#> 39 39
#> 40 40
#> 41 41
#> 42 42
#> 43 43
#> 44 44
#> 45 45
#> 46 46
#> 47 47
#> 48 48
#> 49 49
#> 50 50
#> 51 51
#> 52 52
#> 53 53
#> 54 54
#> 55 55
#> 56 56
#> 57 57
#> 58 58
#> 59 59
#> 60 60
#> 61 61
#> 62 62
#> 63 63
#> 64 64
#> 65 65
#> 66 66
#> 67 67
#> 68 68
#> 69 69
#> 70 70
#> 71 71
#> 72 72
#> 73 73
#> 74 74
#> 75 75
#> 76 76
#> 77 77
#> 78 78
#> 79 79
#> 80 80
#> 81 81
#> 82 82
#> 83 83
#> 84 84
#> 85 85
#> 86 86
#> 87 87
#> 88 88
#> 89 89
#> 90 90
#> 91 91
#> 92 92
#> 93 93
#> 94 94
#> 95 95
#> 96 96
#> 97 97
#> 98 98
#> 99 99
#> 100 100
#> 101 101
#> 102 102
#> 103 103
#> 104 104
#> 105 105
#> 106 106
#> 107 107
#> 108 108
#> 109 109
#> 110 110
#> 111 111
#> 112 112
#> 113 113
#> 114 114
#> 115 115
#> 116 116
#> 117 117
#> 118 118
#> 119 119
#> 120 120
#> 121 121
#> 122 122
#> 123 123
#> 124 124
#> 125 125
#> 126 126
#> 127 127
#> 128 128
#> 129 129
#> 130 130
#> 131 131
#> 132 132
#> 133 133
#> 134 134
#> 135 135
#> 136 136
#> 137 137
#> 138 138
#> 139 139
#> 140 140
#> 141 141
#> 142 142
#> 143 143
#> 144 144
#> 145 145
#> 146 146
#> 147 147
#> 148 148
#> 149 149
#> 150 150
#> 151 151
#> 152 152
#> 153 153
#> 154 154
#> 155 155
#> 156 156
#> 157 157
#> 158 158
#> 159 159
#> 160 160
#> 161 161
#> 162 162
#> 163 163
#> 164 164
#> 165 165
#> 166 166
#> 167 167
#> 168 168
#> 169 169
#> 170 170
#> 171 171
#> 172 172
#> 173 173
#> 174 174
#> 175 175
#> 176 176
#> 177 177
#> 178 178
#> 179 179
#> 180 180
#> 181 181
#> 182 182
#> 183 183
#> 184 184
#> 185 185
#> 186 186
#> 187 187
#> 188 188
#> 189 189
#> 190 190
#> 191 191
#> 192 192
#> 193 193
#> 194 194
#> 195 195
#> 196 196
#> 197 197
#> 198 198
#> 199 199
#> 200 200
#> 201 201
#> 202 202
#> 203 203
#> 204 204
#> 205 205
#> 206 206
#> 207 207
#> 208 208
#> 209 209
#> 210 210
#> 211 211
#> 212 212
#> 213 213
#> 214 214
#> 215 215
#> 216 216
#> 217 217
#> 218 218
#> 219 219
#> 220 220
#> 221 221
#> 222 222
#> 223 223
#> 224 224
#> 225 225
#> 226 226
#> 227 227
#> 228 228
#> 229 229
#> 230 230
#> 231 231
#> 232 232
#> 233 233
#> 234 234
#> 235 235
#> 236 236
#> 237 237
#> 238 238
#> 239 239
#> 240 240
#> 241 241
#> 242 242
#> 243 243
#> 244 244
#> 245 245
#> 246 246
#> 247 247
#> 248 248
#> 249 249
#> 250 250
#> 251 251
#> 252 252
#> 253 253
#> 254 254
#> 255 255
#> 256 256
#> 257 257
#> 258 258
#> 259 259
#> 260 260
#> 261 261
#> 262 262
#> 263 263
#> 264 264
#> 265 265
#> 266 266
#> 267 267
#> 268 268
#> 269 269
#> 270 270
#> 271 271
#> 272 272
#> 273 273
#> 274 274
#> 275 275
#> 276 276
#> 277 277
#> 278 278
#> 279 279
#> 280 280
#> 281 281
#> 282 282
#> 283 283
#> 284 284
#> 285 285
#> 286 286
#> 287 287
#> 288 288
#> 289 289
#> 290 290
#> 291 291
#> 292 292
#> 293 293
#> 294 294
#> 295 295
#> 296 296
#> 297 297
#> 298 298
#> 299 299
#> 300 300
#> 301 301
#> 302 302
#> 303 303
#> 304 304
#> 305 305
#> 306 306
#> 307 307
#> 308 308
#> 309 309
#> 310 310
#> 311 311
#> 312 312
#> 313 313
#> 314 314
#> 315 315
#> 316 316
#> 317 317
#> 318 318
#> 319 319
#> 320 320
#> 321 321
#> 322 322
#> 323 323
#> 324 324
#> 325 325
#> 326 326
#> 327 327
#> 328 328
#> 329 329
#> 330 330
#> 331 331
#> 332 332
#> 333 333
#> 334 334
#> 335 335
#> 336 336
#> 337 337
#> 338 338
#> 339 339
#> 340 340
#> 341 341
#> 342 342
#> 343 343
#> 344 344
#> 345 345
#> 346 346
#> 347 347
#> 348 348
#> 349 349
#> 350 350
#> 351 351
#> 352 352
#> 353 353
#> 354 354
#> 355 355
#> 356 356
#> 357 357
#> 358 358
#> 359 359
#> 360 360
#> 361 361
#> 362 362
#> 363 363
#> 364 364
#> 365 365
#> 366 366
#> 367 367
#> 368 368
#> 369 369
#> 370 370
#> 371 371
#> 372 372
#> 373 373
#> 374 374
#> 375 375
#> 376 376
#> 377 377
#> 378 378
#> 379 379
#> 380 380
#> 381 381
#> 382 382
#> 383 383
#> 384 384
#> 385 385
#> 386 386
#> 387 387
#> 388 388
#> 389 389
#> 390 390
#> 391 391
#> 392 392
#> 393 393
#> 394 394
#> 395 395
#> 396 396
#> 397 397
#> 398 398
#> 399 399
#> 400 400
#> 401 401
#> 402 402
#> 403 403
#> 404 404
#> 405 405
#> 406 406
#> 407 407
#> 408 408
#> 409 409
#> 410 410
#> 411 411
#> 412 412
#> 413 413
#> 414 414
#> 415 415
#> 416 416
#> 417 417
#> 418 418
#> 419 419
#> 420 420
#> 421 421
#> 422 422
#> 423 423
#> 424 424
#> 425 425
#> 426 426
#> 427 427
#> 428 428
#> 429 429
#> 430 430
#> 431 431
#> 432 432
#> 433 433
#> 434 434
#> 435 435
#> 436 436
#> 437 437
#> 438 438
#> 439 439
#> 440 440
#> 441 441
#> 442 442
#> 443 443
#> 444 444
#> 445 445
#> 446 446
#> 447 447
#> 448 448
#> 449 449
#> 450 450
#> 451 451
#> 452 452
#> 453 453
#> 454 454
#> 455 455
#> 456 456
#> 457 457
#> 458 458
#> 459 459
#> 460 460
#> 461 461
#> 462 462
#> 463 463
#> 464 464
#> 465 465
#> 466 466
#> 467 467
#> 468 468
#> 469 469
#> 470 470
#> 471 471
#> 472 472
#> 473 473
#> 474 474
#> 475 475
#> 476 476
#> 477 477
#> 478 478
#> 479 479
#> 480 480
#> 481 481
#> 482 482
#> 483 483
#> 484 484
#> 485 485
#> 486 486
#> 487 487
#> 488 488
#> 489 489
#> 490 490
#> 491 491
#> 492 492
#> 493 493
#> 494 494
#> 495 495
#> 496 496
#> 497 497
#> 498 498
#> 499 499
#> 500 500
#> 501 501
#> 502 502
#> 503 503
#> 504 504
#> 505 505
#> 506 506
#> 507 507
#> 508 508
#> 509 509
#> 510 510
#> 511 511
#> 512 512
#> 513 513
#> 514 514
#> 515 515
#> 516 516
#> 517 517
#> 518 518
#> 519 519
#> 520 520
#> 521 521
#> 522 522
#> 523 523
#> 524 524
#> 525 525
#> 526 526
#> 527 527
#> 528 528
#> 529 529
#> 530 530
#> 531 531
#> 532 532
#> 533 533
#> 534 534
#> 535 535
#> 536 536
#> 537 537
#> 538 538
#> 539 539
#> 540 540
#> 541 541
#> 542 542
#> 543 543
#> 544 544
#> 545 545
#> 546 546
#> 547 547
#> 548 548
#> 549 549
#> 550 550
#> 551 551
#> 552 552
#> 553 553
#> 554 554
#> 555 555
#> 556 556
#> 557 557
#> 558 558
#> 559 559
#> 560 560
#> 561 561
#> 562 562
#> 563 563
#> 564 564
#> 565 565
#> 566 566
#> 567 567
#> 568 568
#> 569 569
#> 570 570
#> 571 571
#> 572 572
#> 573 573
#> 574 574
#> 575 575
#> 576 576
#> 577 577
#> 578 578
#> 579 579
#> 580 580
#> 581 581
#> 582 582
#> 583 583
#> 584 584
#> 585 585
#> 586 586
#> 587 587
#> 588 588
#> 589 589
#> 590 590
#> 591 591
#> 592 592
#> 593 593
#> 594 594
#> 595 595
#> 596 596
#> 597 597
#> 598 598
#> 599 599
#> 600 600
#> 601 601
#> 602 602
#> 603 603
#> 604 604
#> 605 605
#> 606 606
#> 607 607
#> 608 608
#> 609 609
#> 610 610
#> 611 611
#> 612 612
#> 613 613
#> 614 614
#> 615 615
#> 616 616
#> 617 617
#> 618 618
#> 619 619
#> 620 620
#> 621 621
#> 622 622
#> 623 623
#> 624 624
#> 625 625
#> 626 626
#> 627 627
#> 628 628
#> 629 629
#> 630 630
#> 631 631
#> 632 632
#> 633 633
#> 634 634
#> 635 635
#> 636 636
#> 637 637
#> 638 638
#> 639 639
#> 640 640
#> 641 641
#> 642 642
#> 643 643
#> 644 644
#> 645 645
#> 646 646
#> 647 647
#> 648 648
#> 649 649
#> 650 650
#> 651 651
#> 652 652
#> 653 653
#> 654 654
#> 655 655
#> 656 656
#> 657 657
#> 658 658
#> 659 659
#> 660 660
#> 661 661
#> 662 662
#> 663 663
#> 664 664
#> 665 665
#> 666 666
#> 667 667
#> 668 668
#> 669 669
#> 670 670
#> 671 671
#> 672 672
#> 673 673
#> 674 674
#> 675 675
#> 676 676
#> 677 677
#> 678 678
#> 679 679
#> 680 680
#> 681 681
#> 682 682
#> 683 683
#> 684 684
#> 685 685
#> 686 686
#> 687 687
#> 688 688
#> 689 689
#> 690 690
#> 691 691
#> 692 692
#> 693 693
#> 694 694
#> 695 695
#> 696 696
#> 697 697
#> 698 698
#> 699 699
#> 700 700
#> 701 701
#> 702 702
#> 703 703
#> 704 704
#> 705 705
#> 706 706
#> 707 707
#> 708 708
#> 709 709
#> 710 710
#> 711 711
#> 712 712
#> 713 713
#> 714 714
#> 715 715
#> 716 716
#> 717 717
#> 718 718
#> 719 719
#> 720 720
#> 721 721
#> 722 722
#> 723 723
#> 724 724
#> 725 725
#> 726 726
#> 727 727
#> 728 728
#> 729 729
#> 730 730
#> 731 731
#> 732 732
#> 733 733
#> 734 734
#> 735 735
#> 736 736
#> 737 737
#> 738 738
#> 739 739
#> 740 740
#> 741 741
#> 742 742
#> 743 743
#> 744 744
#> 745 745
#> 746 746
#> 747 747
#> 748 748
#> 749 749
#> 750 750
#> 751 751
#> 752 752
#> 753 753
#> 754 754
#> 755 755
#> 756 756
#> 757 757
#> 758 758
#> 759 759
#> 760 760
#> 761 761
#> 762 762
#> 763 763
#> 764 764
#> 765 765
#> 766 766
#> 767 767
#> 768 768
#> 769 769
#> 770 770
#> 771 771
#> 772 772
#> 773 773
#> 774 774
#> 775 775
#> 776 776
#> 777 777
#> 778 778
#> 779 779
#> 780 780
#> 781 781
#> 782 782
#> 783 783
#> 784 784
#> 785 785
#> 786 786
#> 787 787
#> 788 788
#> 789 789
#> 790 790
#> 791 791
#> 792 792
#> 793 793
#> 794 794
#> 795 795
#> 796 796
#> 797 797
#> 798 798
#> 799 799
#> 800 800
#> 801 801
#> 802 802
#> 803 803
#> 804 804
#> 805 805
#> 806 806
#> 807 807
#> 808 808
#> 809 809
#> 810 810
#> 811 811
#> 812 812
#> 813 813
#> 814 814
#> 815 815
#> 816 816
#> 817 817
#> 818 818
#> 819 819
#> 820 820
#> 821 821
#> 822 822
#> 823 823
#> 824 824
#> 825 825
#> 826 826
#> 827 827
#> 828 828
#> 829 829
#> 830 830
#> 831 831
#> 832 832
#> 833 833
#> 834 834
#> 835 835
#> 836 836
#> 837 837
#> 838 838
#> 839 839
#> 840 840
#> 841 841
#> 842 842
#> 843 843
#> 844 844
#> 845 845
#> 846 846
#> 847 847
#> 848 848
#> 849 849
#> 850 850
#> 851 851
#> 852 852
#> 853 853
#> 854 854
#> 855 855
#> 856 856
#> 857 857
#> 858 858
#> 859 859
#> 860 860
#> 861 861
#> 862 862
#> 863 863
#> 864 864
#> 865 865
#> 866 866
#> 867 867
#> 868 868
#> 869 869
#> 870 870
#> 871 871
#> 872 872
#> 873 873
#> 874 874
#> 875 875
#> 876 876
#> 877 877
#> 878 878
#> 879 879
#> 880 880
#> 881 881
#> 882 882
#> 883 883
#> 884 884
#> 885 885
#> 886 886
#> 887 887
#> 888 888
#> 889 889
#> 890 890
#> 891 891
#> 892 892
#> 893 893
#> 894 894
#> 895 895
#> 896 896
#> 897 897
#> 898 898
#> 899 899
#> 900 900
#> 901 901
#> 902 902
#> 903 903
#> 904 904
#> 905 905
#> 906 906
#> 907 907
#> 908 908
#> 909 909
#> 910 910
#> 911 911
#> 912 912
#> 913 913
#> 914 914
#> 915 915
#> 916 916
#> 917 917
#> 918 918
#> 919 919
#> 920 920
#> 921 921
#> 922 922
#> 923 923
#> 924 924
#> 925 925
#> 926 926
#> 927 927
#> 928 928
#> 929 929
#> 930 930
#> 931 931
#> 932 932
#> 933 933
#> 934 934
#> 935 935
#> 936 936
#> 937 937
#> 938 938
#> 939 939
#> 940 940
#> 941 941
#> 942 942
#> 943 943
#> 944 944
#> 945 945
#> 946 946
#> 947 947
#> 948 948
#> 949 949
#> 950 950
#> 951 951
#> 952 952
#> 953 953
#> 954 954
#> 955 955
#> 956 956
#> 957 957
#> 958 958
#> 959 959
#> 960 960
#> 961 961
#> 962 962
#> 963 963
#> 964 964
#> 965 965
#> 966 966
#> 967 967
#> 968 968
#> 969 969
#> 970 970
#> 971 971
#> 972 972
#> 973 973
#> 974 974
#> 975 975
#> 976 976
#> 977 977
#> 978 978
#> 979 979
#> 980 980
#> 981 981
#> 982 982
#> 983 983
#> 984 984
#> 985 985
#> 986 986
#> 987 987
#> 988 988
#> 989 989
#> 990 990
#> 991 991
#> 992 992
#> 993 993
#> 994 994
#> 995 995
#> 996 996
#> 997 997
#> 998 998
#> 999 999
#> 1000 1000
sessionInfo()
#> R version 4.0.3 (2020-10-10)
#> Platform: x86_64-w64-mingw32/x64 (64-bit)
#> Running under: Windows 10 x64 (build 19042)
#>
#> Matrix products: default
#>
#> locale:
#> [1] LC_COLLATE=Portuguese_Brazil.1252 LC_CTYPE=Portuguese_Brazil.1252
#> [3] LC_MONETARY=Portuguese_Brazil.1252 LC_NUMERIC=C
#> [5] LC_TIME=Portuguese_Brazil.1252
#>
#> attached base packages:
#> [1] stats graphics grDevices utils datasets methods base
#>
#> other attached packages:
#> [1] purrr_0.3.4 magrittr_2.0.1 furrr_0.2.2 future_1.21.0
#> [5] RSQLite_2.2.3.9000 DBI_1.1.1
#>
#> loaded via a namespace (and not attached):
#> [1] Rcpp_1.0.6 pillar_1.5.1 compiler_4.0.3 highr_0.8
#> [5] tools_4.0.3 digest_0.6.27 bit_4.0.4 evaluate_0.14
#> [9] memoise_2.0.0 lifecycle_1.0.0 tibble_3.1.0 debugme_1.1.0
#> [13] pkgconfig_2.0.3 rlang_0.4.10 reprex_1.0.0 parallel_4.0.3
#> [17] yaml_2.2.1 xfun_0.21 fastmap_1.1.0 styler_1.3.2
#> [21] stringr_1.4.0 knitr_1.31 fs_1.5.0 vctrs_0.3.6
#> [25] globals_0.14.0 bit64_4.0.5 glue_1.4.2 listenv_0.8.0
#> [29] parallelly_1.23.0 fansi_0.4.2 rmarkdown_2.7 blob_1.2.1
#> [33] backports_1.2.1 codetools_0.2-18 ellipsis_0.3.1 htmltools_0.5.1.1
#> [37] utf8_1.1.4 stringi_1.5.3 cachem_1.0.4 crayon_1.4.1
Created on 2021-03-08 by the reprex package (v1.0.0)
Yes, this has always worked on Windows. Now it will work on Unix as well. Btw. you don't need the purrr::insistently()
here, it is not a very good solution, the proper busy_timeout is. Your simplified code:
library(DBI)
library(RSQLite)
library(furrr)
library(future)
library(magrittr)
n_teste <- 1:1000
unlink("bd_test.db")
connect_sgbd <- function() {
conexao <- dbConnect(
SQLite(),
dbname = file.path("bd_test.db")
)
dbExecute(conexao, "PRAGMA busy_timeout = 5000")
# sqliteSetBusyHandler(conexao, 5000)
conexao
}
teste_write_sqlite <- function(n_teste) {
tb_teste_iris <- iris[1, ] %>%
dplyr::mutate(n_loop = n_teste)
conn <- connect_sgbd()
on.exit(dbDisconnect(conn), add = TRUE)
dbExecute(conn, "BEGIN IMMEDIATE TRANSACTION")
dbWriteTable(conn, "tb_teste_iris", tb_teste_iris, append = TRUE)
dbExecute(conn, "COMMIT TRANSACTION")
}
future::plan("multisession", workers = 8)
options(future.rng.onMisuse = "ignore")
furrr::future_walk(n_teste, teste_write_sqlite, .progress = TRUE)
Questions :
With dbExecute (connection," PRAGMA busy_timeout = 5000 ")
I would define the timeout, but where can I define the number of attempts to be tested?
As I don't know how SQLite works internally, I was left with these doubts.
And thanks for the suggestion in the script.
With dbExecute (connection," PRAGMA busy_timeout = 5000 ") I would define the timeout, but where can I define the number of attempts to be tested?
purrr::insistently()
is not a timeout, purrr simply tries to run the code again 5s later, and then again 5s later, etc. the specified number of times.
busy_timeout retries many-many times in that 5s. These are the current values: https://github.com/mackyle/sqlite/blob/76389e16f344efe5590b5d7212a6b4f3f88647cd/src/main.c#L1654
static const u8 delays[] =
{ 1, 2, 5, 10, 15, 20, 25, 25, 25, 50, 50, 100 };
These are in milliseconds AFAICT. So first there is a 1ms delay, then a 2ms, etc. and the largest delay is 100ms.
While this mechanism is not ideal, because it is not fair, it is not too bad in practice.
Got it.
Thank you very much for the clarifications.
It would be interesting to document how the user should write the script to parallel recordings with RSQLite. With the evolution of the furrr
package (which allows you to parallelize the code with a syntax similar topurrr
), this should be a frequent question.
It essentially boils down to this: https://github.com/r-dbi/RSQLite/issues/280#issuecomment-792652737
I suggest that you set a value that is the highest that you would tolerate. E.g. for many or long concurrent writes, it is fine to set it to several minutes. The goal is to only timeout when there is a deadlock.
Hi all, can you please try #345 to see if that solves your issues?
Thanks, this is working for us https://github.com/vimc/orderly/pull/276/files#diff-99ac83df4a293192f53588f0a246eac8519cf5acac1b74869043ac8af55ffe15R205
FYI, I wrote this up at https://blog.r-hub.io/2021/03/13/rsqlite-parallel/
Hi all,
I have been eyeing this issue for some time and am happy to say that the blog post of @gaborcsardi helped me fix parallelization issues! One thing that wasn't entirely clear to me is that the busy timeouts also need to be set when reading data.
Thanks, Rick
This old thread has been automatically locked. If you think you have found something related to this, please open a new issue and link to this old issue if necessary.
I would like to utilize sqlite3_busy_handler() and squlite3_busy_timeout() to check if a database is locked and to retry RSQLite::dbWriteTable once the database is no longer locked. Is there any implementation of this in RSQLite?