orientdb_client 0.0.8 → 0.0.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/README.md +1 -0
- data/lib/orientdb_client.rb +6 -2
- data/lib/orientdb_client/version.rb +1 -1
- data/spec/orientdb_client_spec.rb +24 -4
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3810979454170f1b6d1df18f2f453bfad734f500
|
4
|
+
data.tar.gz: f49bf1b2472ada3244ddd7c34ba66c368f0d15a9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6629eb4fc5d56be1d4a1a5d306fd7aaaf56942d41a0636a784271c612636c40b8e71c5fc2e5bbeec0c980c94b5ad07577f4b37aaf7d28cd7cb4e6d36f197d300
|
7
|
+
data.tar.gz: 2f29920d54e52bf12c1c752f6974cb694587ddf317e197c0ed1fd32540487131b1075e1c87f43d07f0fcbe2796fc53a53627d0578ea7bfba22d7d9369c31e2e5
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
data/lib/orientdb_client.rb
CHANGED
@@ -359,7 +359,7 @@ module OrientdbClient
|
|
359
359
|
when /NegativeArraySizeException/
|
360
360
|
raise NegativeArraySizeException.new("#{odb_error_class}: #{odb_error_message}", code, body)
|
361
361
|
else
|
362
|
-
|
362
|
+
error_handling_fallback(code, body)
|
363
363
|
end
|
364
364
|
end
|
365
365
|
|
@@ -372,12 +372,16 @@ module OrientdbClient
|
|
372
372
|
rescue => e
|
373
373
|
code = response.response_code
|
374
374
|
body = response.body
|
375
|
+
error_handling_fallback(code, body, e)
|
376
|
+
end
|
377
|
+
|
378
|
+
def error_handling_fallback(code, body, e = nil)
|
375
379
|
if (body.match(/Database.*already exists/))
|
376
380
|
raise ConflictError.new('Database already exists', code, body)
|
377
381
|
elsif (body.match(/NegativeArraySizeException/))
|
378
382
|
raise NegativeArraySizeException.new(e.message, code, body)
|
379
383
|
else
|
380
|
-
raise
|
384
|
+
raise ServerError.new("Unparseable Orientdb server error", code, body)
|
381
385
|
end
|
382
386
|
end
|
383
387
|
|
@@ -385,6 +385,12 @@ RSpec.describe OrientdbClient do
|
|
385
385
|
|
386
386
|
# This spec sometimes fails on Orientdb 2.1.X
|
387
387
|
context 'when class does not exist' do
|
388
|
+
before do
|
389
|
+
if (client.has_class?(class_name))
|
390
|
+
client.drop_class(class_name)
|
391
|
+
end
|
392
|
+
end
|
393
|
+
|
388
394
|
it 'raises exception' do
|
389
395
|
expect do
|
390
396
|
client.create_property(class_name, 'member_name', 'string')
|
@@ -691,9 +697,20 @@ RSpec.describe OrientdbClient do
|
|
691
697
|
jim_rid = jim['result'][0]['@rid']
|
692
698
|
bob_rid = bob['result'][0]['@rid']
|
693
699
|
client.command("create edge Friend from #{jim_rid} to #{bob_rid}")
|
694
|
-
|
695
|
-
|
696
|
-
|
700
|
+
|
701
|
+
err = nil
|
702
|
+
|
703
|
+
begin
|
704
|
+
result = client.query("select in('Friend')[660-669].user_id,user_id from Person where user_id in [2]", {:limit=>1})
|
705
|
+
rescue => e
|
706
|
+
err = e
|
707
|
+
end
|
708
|
+
|
709
|
+
if err
|
710
|
+
expect(err).to be_a(OrientdbClient::NotFoundError)
|
711
|
+
else
|
712
|
+
expect(result[0]['in']).to eql([])
|
713
|
+
end
|
697
714
|
end
|
698
715
|
end
|
699
716
|
|
@@ -711,7 +728,7 @@ RSpec.describe OrientdbClient do
|
|
711
728
|
end
|
712
729
|
|
713
730
|
it 'raises DuplicateRecordError' do
|
714
|
-
error_klass = $distributed_mode ? OrientdbClient::DistributedDuplicateRecordError : OrientdbClient::
|
731
|
+
error_klass = $distributed_mode ? OrientdbClient::DistributedDuplicateRecordError : OrientdbClient::DuplicateRecordError
|
715
732
|
client.create_class('Person', extends: 'V') do |c|
|
716
733
|
c.property('user_id', 'integer')
|
717
734
|
end
|
@@ -839,6 +856,9 @@ RSpec.describe OrientdbClient do
|
|
839
856
|
else
|
840
857
|
correct_error_raised = err.is_a?(OrientdbClient::MVCCError)
|
841
858
|
end
|
859
|
+
if !err
|
860
|
+
pending 'could not produce mvcc conflict (consistently fails with orientdb 2.2.30)'
|
861
|
+
end
|
842
862
|
expect(correct_error_raised).to be true
|
843
863
|
end
|
844
864
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: orientdb_client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Luke Rodgers
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-01-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: typhoeus
|
@@ -182,7 +182,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
182
182
|
version: '0'
|
183
183
|
requirements: []
|
184
184
|
rubyforge_project:
|
185
|
-
rubygems_version: 2.
|
185
|
+
rubygems_version: 2.6.11
|
186
186
|
signing_key:
|
187
187
|
specification_version: 4
|
188
188
|
summary: Orientdb ruby client
|