rbbt-util 5.17.19 → 5.17.20
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/rbbt/util/R/eval.rb +14 -3
- data/lib/rbbt/util/misc/pipes.rb +7 -4
- data/lib/rbbt/workflow/accessor.rb +9 -6
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 58cd900e8238a97baf230cbb81502f4c3aca35ba
|
4
|
+
data.tar.gz: fb08bda42782f76c8dd4a8b2b338d5ebc74a2038
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bc6c3a7db160f46f55c8cfd7ab266168cc688045077bab418ca5ea0c146e162c89f4b1fdfb41cecb7268f73f5e23e689edeff342b647325ef172f68f4e5d493d
|
7
|
+
data.tar.gz: fa5201d4762db7bba332aa5d0fce2e41c540447793fda061436405e6af902d15ede743197481c2134df90081f889ba7e0636aea169aa0819763e8fdf96e41338
|
data/lib/rbbt/util/R/eval.rb
CHANGED
@@ -12,7 +12,7 @@ module Rserve
|
|
12
12
|
end
|
13
13
|
|
14
14
|
module R
|
15
|
-
SESSION = ENV["
|
15
|
+
SESSION = ENV["RServeSession"] || "Session-PID-" + Process.pid.to_s
|
16
16
|
|
17
17
|
def self.socket_file
|
18
18
|
@@socket_file ||= Rbbt.tmp.R_sockets[R::SESSION].find
|
@@ -22,6 +22,16 @@ module R
|
|
22
22
|
@@lockfile ||= socket_file + '.lock'
|
23
23
|
end
|
24
24
|
|
25
|
+
def self.semfile
|
26
|
+
if defined? @@semfile and not @@semfile.nil?
|
27
|
+
@@semfile
|
28
|
+
else
|
29
|
+
@@semfile = File.basename(socket_file) + '.sem'
|
30
|
+
RbbtSemaphore.create_semaphore(@@semfile,1)
|
31
|
+
@@semfile
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
25
35
|
def self.workdir
|
26
36
|
@@workdir ||= socket_file + '.wd'
|
27
37
|
end
|
@@ -37,6 +47,7 @@ module R
|
|
37
47
|
begin
|
38
48
|
Process.kill :INT, @@instance_process
|
39
49
|
rescue Exception
|
50
|
+
Log.warn "Error killing Rserve (#{@@instance_process}): #{$!.message}"
|
40
51
|
end
|
41
52
|
end
|
42
53
|
FileUtils.rm_rf pid_file if File.exists? pid_file
|
@@ -103,8 +114,8 @@ module R
|
|
103
114
|
end
|
104
115
|
|
105
116
|
def self._eval(cmd)
|
106
|
-
|
107
|
-
times =
|
117
|
+
RbbtSemaphore.synchronize(semfile) do
|
118
|
+
times = 1
|
108
119
|
begin
|
109
120
|
instance.eval(cmd)
|
110
121
|
rescue Rserve::Connection::EvalError
|
data/lib/rbbt/util/misc/pipes.rb
CHANGED
@@ -373,11 +373,14 @@ module Misc
|
|
373
373
|
keys = []
|
374
374
|
parts = []
|
375
375
|
lines.each_with_index do |line,i|
|
376
|
-
|
377
|
-
|
378
|
-
|
376
|
+
if line.nil?
|
377
|
+
key, *p = line.strip.split(sep, -1)
|
378
|
+
keys[i] = key
|
379
|
+
parts[i] = p
|
380
|
+
else
|
381
|
+
end
|
379
382
|
end
|
380
|
-
sizes = parts.collect{|p| p.length }
|
383
|
+
sizes = parts.collect{|p| p.nil? ? 0 : p.length }
|
381
384
|
last_min = nil
|
382
385
|
while lines.compact.any?
|
383
386
|
min = keys.compact.sort.first
|
@@ -523,13 +523,16 @@ module Workflow
|
|
523
523
|
case v
|
524
524
|
when Symbol
|
525
525
|
rec_dependency = (real_dependencies + real_dependencies.collect{|d| d.rec_dependencies}).flatten.compact.uniq.select{|d| d.task.name.to_sym == v }.first
|
526
|
-
|
527
|
-
|
528
|
-
if input_options[:stream]
|
529
|
-
rec_dependency.run(true).grace unless rec_dependency.done? or rec_dependency.running?
|
530
|
-
_inputs[i] = rec_dependency
|
526
|
+
if rec_dependency.nil?
|
527
|
+
_inputs[i] = v
|
531
528
|
else
|
532
|
-
|
529
|
+
input_options = workflow.task_info(task)[:input_options][i] || {}
|
530
|
+
if input_options[:stream]
|
531
|
+
#rec_dependency.run(true).grace unless rec_dependency.done? or rec_dependency.running?
|
532
|
+
_inputs[i] = rec_dependency
|
533
|
+
else
|
534
|
+
_inputs[i] = rec_dependency.run
|
535
|
+
end
|
533
536
|
end
|
534
537
|
else
|
535
538
|
_inputs[i] = v
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rbbt-util
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.17.
|
4
|
+
version: 5.17.20
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Miguel Vazquez
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-04-
|
11
|
+
date: 2015-04-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|