semantic-crawler 0.0.3 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,38 +1,49 @@
1
- # [XXX] The current implementation outputs only an unreadable JSON object.
2
- class SemanticCrawler::Freebase::Country < SemanticCrawler::Freebase::Entity
3
- # The Freebase object that should be retrieved
4
- attr_accessor :input_name
5
- # The URL that points to the JSON object.
6
- attr_accessor :json_link
1
+ # encoding: UTF-8
7
2
 
8
- # The URL prefix of an Freebase experimental JSON entity.
9
- @@uri_prefix = "http://www.freebase.com/experimental/topic/standard/en/"
3
+ require 'json'
10
4
 
11
- # Creates a new Freebase object (JSON)
12
- def initialize
13
- @input_name = nil
14
- @html_link = nil
15
- @json_link = nil
16
- end
5
+ module SemanticCrawler
6
+ module Freebase
7
+ # Freebase Country entity. Currently it is very abstract and
8
+ # could be each entry on Freebase.
9
+ #
10
+ # [XXX] The current implementation outputs only an unreadable JSON object.
11
+ class Country
12
+ include HTTParty
13
+ # The Freebase object that should be retrieved
14
+ attr_accessor :input_name
15
+ # The URL that points to the JSON object.
16
+ attr_accessor :json_link
17
+
18
+ # The URL prefix of an Freebase experimental JSON entity.
19
+ @@uri_prefix = "http://www.freebase.com/experimental/topic/standard/en/"
20
+
21
+ # Creates a new Freebase object (JSON)
22
+ def initialize(new_country_name)
23
+ @input_name = new_country_name
24
+ @html_link = nil
25
+ @json_link = nil
26
+ end
27
+
28
+ # Get Country Information from freebase.com
29
+ #
30
+ # Example:
31
+ # >> austria = SemanticCrawler::Freebase::Country.new("Austria")
32
+ # >> austria.get
33
+ #
34
+ # Argumenst:
35
+ # options: (Hash)
36
+ #
37
+ #
38
+ def get(options={})
39
+ if !@input_name.nil?
40
+ @json_link = @@uri_prefix + @input_name
41
+ JSON(self.class.get(@json_link, options).body)["result"]
42
+ else
43
+ nil
44
+ end
45
+ end
17
46
 
18
- # Get Country Information from freebase.com
19
- #
20
- # Example:
21
- # >> freebaseCrawler = SemanticCrawler::Freebase::Crawler.new
22
- # >> austria = freebaseCrawler.getCountry("Austria")
23
- # >> austria.get
24
- #
25
- # Argumenst:
26
- # options: (Hash)
27
- #
28
- #
29
- def get(options={})
30
- if !@input_name.nil?
31
- @json_link = @@uri_prefix + @input_name
32
- JSON(self.class.get(@json_link, options).body)["result"]
33
- else
34
- nil
35
47
  end
36
48
  end
37
-
38
49
  end
@@ -1,5 +1,5 @@
1
1
  # encoding: UTF-8
2
- #
2
+
3
3
  # The Gdacs module is responsible for the parsing of the
4
4
  # current crisis RSS feeds from http://gdacs.org
5
5
  module SemanticCrawler::Gdacs
@@ -0,0 +1,67 @@
1
+ # encoding: UTF-8
2
+
3
+ module SemanticCrawler
4
+ module Gdacs
5
+ # The emergency GDACS.org RSS feed contains the very, very basic
6
+ # information about emergencies.
7
+ class EmergencyFeed
8
+
9
+ # The gdacs.org RSS feed URL. (default:
10
+ # http://new.gdacs.org/xml/rss.xml)
11
+ attr_reader :url
12
+
13
+ # Initializes the gdacs.org feed URL. If not specified the default
14
+ # URL (http://new.gdacs.org/xml/rss.xml) is used. Normally the
15
+ # feed URL should not be changed.
16
+ def initialize(new_url = "http://new.gdacs.org/xml/vo.xml")
17
+ @url = new_url
18
+ @root_node = nil
19
+ begin
20
+ fetch_feed
21
+ rescue => e
22
+ $log.error("Not able to get country information, through exception: #{e}")
23
+ end
24
+ end
25
+
26
+ # Get rss/channel/title
27
+ def title
28
+ query_root_node("title/text()")
29
+ end
30
+
31
+ # Get rss/channel/description
32
+ def description
33
+ query_root_node("description/text()")
34
+ end
35
+
36
+ # Get rss/channel/item*
37
+ def items
38
+ nodeset = query_root_node("item")
39
+ @items = []
40
+ nodeset.each do |item|
41
+ item_obj = SemanticCrawler::Gdacs::EmergencyFeedItem.new(item)
42
+ @items << item_obj
43
+ end
44
+ @items
45
+ end
46
+
47
+ # Query the root_node
48
+ def query_root_node(xpath_query, namespaces = {})
49
+ if !@root_node.nil?
50
+ @root_node.xpath(xpath_query, namespaces)
51
+ end
52
+ end
53
+
54
+ # Returns the whole RSS feed as XML
55
+ def xml_document
56
+ @root_node.to_s
57
+ end
58
+
59
+ private
60
+ # Retrieves the RSS feed
61
+ def fetch_feed
62
+ @doc = Nokogiri::XML(open(@url))
63
+ @root_node = @doc.xpath("/rss/channel")
64
+ end
65
+ end
66
+ end
67
+ end
@@ -0,0 +1,55 @@
1
+ # encoding: UTF-8
2
+
3
+ module SemanticCrawler
4
+ module Gdacs
5
+ # One emergency crisis entity.
6
+ class EmergencyFeedItem
7
+ # XML namespaces used for the parsing process
8
+ @@NAMESPACES = {
9
+ "gdacs" => "http://www.gdacs.org",
10
+ "glide" => "http://glidenumber.net"
11
+ }
12
+
13
+ def initialize(new_root_node)
14
+ @root_node = new_root_node
15
+ end
16
+
17
+ # Returns the crisis title
18
+ def title
19
+ query_root_node("title/text()")
20
+ end
21
+
22
+ # Returns the crisis gdacs link
23
+ def link
24
+ query_root_node("link/text()")
25
+ end
26
+
27
+ # Returns the publication date
28
+ def pubDate
29
+ query_root_node("pubDate/text()")
30
+ end
31
+
32
+ # Returns a human readable event type
33
+ def eventType
34
+ query_root_node("gdacs:eventType/text()", @@NAMESPACES)
35
+ end
36
+
37
+ # Returns the last updated datetime
38
+ def lastUpdate
39
+ query_root_node("gdacs:lastUpdate/text()", @@NAMESPACES)
40
+ end
41
+ # Returns the glide number
42
+ def glide
43
+ query_root_node("glide:number/text()", @@NAMESPACES)
44
+ end
45
+
46
+ # Query the root_node
47
+ def query_root_node(xpath_query, namespaces = {})
48
+ if !@root_node.nil?
49
+ @root_node.xpath(xpath_query, namespaces)
50
+ end
51
+ end
52
+
53
+ end
54
+ end
55
+ end
@@ -28,7 +28,7 @@ module SemanticCrawler
28
28
  begin
29
29
  fetch_feed
30
30
  rescue => e
31
- puts "Not able to get country information, through exception: " + e.message
31
+ $log.error("Not able to get country information, through exception: #{e}")
32
32
  end
33
33
  end
34
34
 
@@ -85,6 +85,7 @@ module SemanticCrawler
85
85
  end
86
86
  end
87
87
 
88
+ # Returns the whole RSS feed as XML
88
89
  def xml_document
89
90
  @root_node.to_s
90
91
  end
@@ -32,25 +32,21 @@ module SemanticCrawler
32
32
 
33
33
  # [OPTIONAL] Returns the gdacs:description
34
34
  def description
35
- puts query_root_node("gdacs:description/text()", @@NAMESPACES)
36
35
  query_root_node("gdacs:description/text()", @@NAMESPACES)
37
36
  end
38
37
 
39
38
  # [OPTIONAL] Returns the gdacs:acknowledgements
40
39
  def acknowledgements
41
- puts query_root_node("gdacs:acknowledgements/text()", @@NAMESPACES)
42
40
  query_root_node("gdacs:acknowledgements/text()", @@NAMESPACES)
43
41
  end
44
42
 
45
43
  # [OPTIONAL] Returns the gdacs:accesslevel
46
44
  def accesslevel
47
- puts query_root_node("gdacs:accesslevel/text()", @@NAMESPACES)
48
45
  query_root_node("gdacs:accesslevel/text()", @@NAMESPACES)
49
46
  end
50
47
 
51
48
  # [OPTIONAL] Returns the gdacs:xslt. Only for XML resources!
52
49
  def xslt
53
- puts query_root_node("gdacs:xslt/text()", @@NAMESPACES)
54
50
  query_root_node("gdacs:xslt/text()", @@NAMESPACES)
55
51
  end
56
52
 
@@ -0,0 +1,4 @@
1
+ # The module GeoNames exposes Web Service calls that are
2
+ # able to handle location information.
3
+ module SemanticCrawler::GeoNames
4
+ end
@@ -1,5 +1,5 @@
1
1
  module SemanticCrawler
2
2
 
3
3
  # The current version of this library.
4
- VERSION = "0.0.3"
4
+ VERSION = "0.0.5"
5
5
  end
@@ -1,4 +1,4 @@
1
- # desc "Explaining what the task does"
2
- # task :semantic_crawler do
3
- # # Task goes here
4
- # end
1
+ #desc "Explaining what the task does"
2
+ #task :semantic_crawler do
3
+ # # Task goes here
4
+ #end
@@ -0,0 +1,31 @@
1
+ # Logfile created on 2012-04-04 18:32:33 +0200 by logger.rb/31641
2
+ E, [2012-04-04T18:32:52.742158 #8026] ERROR -- : Not able to get country information, through exception: 404 Not Found
3
+ E, [2012-04-04T18:33:03.721040 #8026] ERROR -- : Not able to get country information, through exception: can't convert nil into String
4
+ E, [2012-04-04T18:33:03.814128 #8026] ERROR -- : Not able to get country information, through exception: can't convert nil into String
5
+ E, [2012-04-04T18:37:46.824597 #8271] ERROR -- : Not able to get country information, through exception: 404 Not Found
6
+ E, [2012-04-04T18:37:57.830891 #8271] ERROR -- : Not able to get country information, through exception: can't convert nil into String
7
+ E, [2012-04-04T18:37:57.919310 #8271] ERROR -- : Not able to get country information, through exception: can't convert nil into String
8
+ E, [2012-04-04T18:42:49.437415 #8438] ERROR -- : Not able to get country information, through exception: 404 Not Found
9
+ E, [2012-04-04T18:43:00.318476 #8438] ERROR -- : Not able to get country information, through exception: can't convert nil into String
10
+ E, [2012-04-04T18:43:00.401323 #8438] ERROR -- : Not able to get country information, through exception: can't convert nil into String
11
+ E, [2012-04-04T19:27:47.915748 #9687] ERROR -- : Not able to get country information, through exception: getaddrinfo: Name or service not known
12
+ E, [2012-04-04T19:36:47.653949 #9827] ERROR -- : Not able to get country information, through exception: getaddrinfo: Name or service not known
13
+ E, [2012-04-04T19:43:46.589712 #9999] ERROR -- : Not able to get country information, through exception: getaddrinfo: Name or service not known
14
+ E, [2012-04-04T20:37:29.152328 #10688] ERROR -- : Not able to get country information, through exception: 404 Not Found
15
+ E, [2012-04-04T20:37:47.063744 #10688] ERROR -- : Not able to get country information, through exception: can't convert nil into String
16
+ E, [2012-04-04T20:37:47.147220 #10688] ERROR -- : Not able to get country information, through exception: can't convert nil into String
17
+ E, [2012-04-04T21:22:53.102511 #12563] ERROR -- : Not able to get country information, through exception: 404 Not Found
18
+ E, [2012-04-04T21:23:09.228370 #12563] ERROR -- : Not able to get country information, through exception: can't convert nil into String
19
+ E, [2012-04-04T21:23:09.330013 #12563] ERROR -- : Not able to get country information, through exception: can't convert nil into String
20
+ E, [2012-04-04T21:23:29.927309 #12676] ERROR -- : Not able to get country information, through exception: 404 Not Found
21
+ E, [2012-04-04T21:23:47.565717 #12676] ERROR -- : Not able to get country information, through exception: can't convert nil into String
22
+ E, [2012-04-04T21:23:47.649213 #12676] ERROR -- : Not able to get country information, through exception: can't convert nil into String
23
+ E, [2012-04-04T21:48:35.742857 #13541] ERROR -- : Not able to get country information, through exception: 404 Not Found
24
+ E, [2012-04-04T21:49:04.339012 #13541] ERROR -- : Not able to get country information, through exception: can't convert nil into String
25
+ E, [2012-04-04T21:49:04.442848 #13541] ERROR -- : Not able to get country information, through exception: can't convert nil into String
26
+ E, [2012-04-04T21:50:14.589091 #13602] ERROR -- : Not able to get country information, through exception: 404 Not Found
27
+ E, [2012-04-04T21:50:38.906075 #13602] ERROR -- : Not able to get country information, through exception: can't convert nil into String
28
+ E, [2012-04-04T21:50:39.011258 #13602] ERROR -- : Not able to get country information, through exception: can't convert nil into String
29
+ E, [2012-04-04T21:56:52.520176 #13928] ERROR -- : Not able to get country information, through exception: 404 Not Found
30
+ E, [2012-04-04T21:57:17.839197 #13928] ERROR -- : Not able to get country information, through exception: can't convert nil into String
31
+ E, [2012-04-04T21:57:17.920295 #13928] ERROR -- : Not able to get country information, through exception: can't convert nil into String
@@ -7688,3 +7688,756 @@
7688
7688
   (0.0ms) rollback transaction
7689
7689
   (0.0ms) begin transaction
7690
7690
   (0.0ms) rollback transaction
7691
+  (3.7ms) begin transaction
7692
+  (0.1ms) rollback transaction
7693
+  (0.0ms) begin transaction
7694
+  (0.1ms) rollback transaction
7695
+  (0.0ms) begin transaction
7696
+  (0.1ms) rollback transaction
7697
+  (0.0ms) begin transaction
7698
+  (0.1ms) rollback transaction
7699
+  (0.1ms) begin transaction
7700
+  (0.2ms) rollback transaction
7701
+  (0.1ms) begin transaction
7702
+  (0.2ms) rollback transaction
7703
+  (0.1ms) begin transaction
7704
+  (0.1ms) rollback transaction
7705
+  (1.4ms) begin transaction
7706
+  (0.1ms) rollback transaction
7707
+  (0.0ms) begin transaction
7708
+  (0.1ms) rollback transaction
7709
+  (0.0ms) begin transaction
7710
+  (0.1ms) rollback transaction
7711
+  (0.0ms) begin transaction
7712
+  (0.1ms) rollback transaction
7713
+  (0.0ms) begin transaction
7714
+  (0.1ms) rollback transaction
7715
+  (0.0ms) begin transaction
7716
+  (0.2ms) rollback transaction
7717
+  (0.1ms) begin transaction
7718
+  (0.1ms) rollback transaction
7719
+  (0.0ms) begin transaction
7720
+  (0.2ms) rollback transaction
7721
+  (0.1ms) begin transaction
7722
+  (0.2ms) rollback transaction
7723
+  (0.1ms) begin transaction
7724
+  (0.1ms) rollback transaction
7725
+  (0.0ms) begin transaction
7726
+  (0.1ms) rollback transaction
7727
+  (0.0ms) begin transaction
7728
+  (0.1ms) rollback transaction
7729
+  (0.0ms) begin transaction
7730
+  (0.1ms) rollback transaction
7731
+  (0.1ms) begin transaction
7732
+  (0.1ms) rollback transaction
7733
+  (0.0ms) begin transaction
7734
+  (0.1ms) rollback transaction
7735
+  (0.0ms) begin transaction
7736
+  (0.1ms) rollback transaction
7737
+  (0.0ms) begin transaction
7738
+  (0.0ms) rollback transaction
7739
+  (0.0ms) begin transaction
7740
+  (0.0ms) rollback transaction
7741
+  (0.0ms) begin transaction
7742
+  (0.0ms) rollback transaction
7743
+  (0.0ms) begin transaction
7744
+  (0.0ms) rollback transaction
7745
+  (3.4ms) begin transaction
7746
+  (0.1ms) rollback transaction
7747
+  (0.0ms) begin transaction
7748
+  (0.2ms) rollback transaction
7749
+  (0.1ms) begin transaction
7750
+  (0.2ms) rollback transaction
7751
+  (0.1ms) begin transaction
7752
+  (0.1ms) rollback transaction
7753
+  (0.1ms) begin transaction
7754
+  (0.1ms) rollback transaction
7755
+  (0.1ms) begin transaction
7756
+  (0.1ms) rollback transaction
7757
+  (0.0ms) begin transaction
7758
+  (0.2ms) rollback transaction
7759
+  (0.1ms) begin transaction
7760
+  (0.1ms) rollback transaction
7761
+  (0.1ms) begin transaction
7762
+  (0.1ms) rollback transaction
7763
+  (0.0ms) begin transaction
7764
+  (0.2ms) rollback transaction
7765
+  (0.1ms) begin transaction
7766
+  (0.1ms) rollback transaction
7767
+  (3.5ms) begin transaction
7768
+  (0.1ms) rollback transaction
7769
+  (0.0ms) begin transaction
7770
+  (0.2ms) rollback transaction
7771
+  (0.1ms) begin transaction
7772
+  (0.2ms) rollback transaction
7773
+  (0.1ms) begin transaction
7774
+  (0.2ms) rollback transaction
7775
+  (0.0ms) begin transaction
7776
+  (0.2ms) rollback transaction
7777
+  (0.1ms) begin transaction
7778
+  (0.1ms) rollback transaction
7779
+  (0.0ms) begin transaction
7780
+  (0.2ms) rollback transaction
7781
+  (0.1ms) begin transaction
7782
+  (0.2ms) rollback transaction
7783
+  (0.1ms) begin transaction
7784
+  (0.1ms) rollback transaction
7785
+  (0.0ms) begin transaction
7786
+  (0.1ms) rollback transaction
7787
+  (0.0ms) begin transaction
7788
+  (0.2ms) rollback transaction
7789
+  (0.1ms) begin transaction
7790
+  (0.1ms) rollback transaction
7791
+  (0.0ms) begin transaction
7792
+  (0.2ms) rollback transaction
7793
+  (0.1ms) begin transaction
7794
+  (0.2ms) rollback transaction
7795
+  (0.1ms) begin transaction
7796
+  (0.2ms) rollback transaction
7797
+  (0.1ms) begin transaction
7798
+  (0.2ms) rollback transaction
7799
+  (0.1ms) begin transaction
7800
+  (0.1ms) rollback transaction
7801
+  (0.1ms) begin transaction
7802
+  (0.1ms) rollback transaction
7803
+  (0.0ms) begin transaction
7804
+  (0.1ms) rollback transaction
7805
+  (0.0ms) begin transaction
7806
+  (0.1ms) rollback transaction
7807
+  (0.1ms) begin transaction
7808
+  (0.1ms) rollback transaction
7809
+  (0.0ms) begin transaction
7810
+  (0.2ms) rollback transaction
7811
+  (0.0ms) begin transaction
7812
+  (0.2ms) rollback transaction
7813
+  (0.0ms) begin transaction
7814
+  (0.0ms) rollback transaction
7815
+  (4.3ms) begin transaction
7816
+  (0.2ms) rollback transaction
7817
+  (0.1ms) begin transaction
7818
+  (0.2ms) rollback transaction
7819
+  (0.1ms) begin transaction
7820
+  (0.1ms) rollback transaction
7821
+  (0.0ms) begin transaction
7822
+  (0.2ms) rollback transaction
7823
+  (3.5ms) begin transaction
7824
+  (0.1ms) rollback transaction
7825
+  (0.0ms) begin transaction
7826
+  (0.1ms) rollback transaction
7827
+  (4.0ms) begin transaction
7828
+  (0.2ms) rollback transaction
7829
+  (0.1ms) begin transaction
7830
+  (0.2ms) rollback transaction
7831
+  (0.1ms) begin transaction
7832
+  (0.1ms) rollback transaction
7833
+  (0.0ms) begin transaction
7834
+  (0.1ms) rollback transaction
7835
+  (0.0ms) begin transaction
7836
+  (0.1ms) rollback transaction
7837
+  (0.0ms) begin transaction
7838
+  (0.2ms) rollback transaction
7839
+  (0.1ms) begin transaction
7840
+  (0.2ms) rollback transaction
7841
+  (3.6ms) begin transaction
7842
+  (0.1ms) rollback transaction
7843
+  (0.0ms) begin transaction
7844
+  (0.0ms) rollback transaction
7845
+  (0.0ms) begin transaction
7846
+  (0.0ms) rollback transaction
7847
+  (0.0ms) begin transaction
7848
+  (0.0ms) rollback transaction
7849
+  (0.0ms) begin transaction
7850
+  (0.0ms) rollback transaction
7851
+  (0.0ms) begin transaction
7852
+  (0.0ms) rollback transaction
7853
+  (0.0ms) begin transaction
7854
+  (0.0ms) rollback transaction
7855
+  (0.0ms) begin transaction
7856
+  (0.0ms) rollback transaction
7857
+  (0.0ms) begin transaction
7858
+  (0.0ms) rollback transaction
7859
+  (0.0ms) begin transaction
7860
+  (0.0ms) rollback transaction
7861
+  (0.0ms) begin transaction
7862
+  (0.0ms) rollback transaction
7863
+  (0.0ms) begin transaction
7864
+  (0.0ms) rollback transaction
7865
+  (0.0ms) begin transaction
7866
+  (0.0ms) rollback transaction
7867
+  (0.0ms) begin transaction
7868
+  (0.0ms) rollback transaction
7869
+  (0.0ms) begin transaction
7870
+  (0.1ms) rollback transaction
7871
+  (0.0ms) begin transaction
7872
+  (0.2ms) rollback transaction
7873
+  (3.4ms) begin transaction
7874
+  (0.1ms) rollback transaction
7875
+  (0.0ms) begin transaction
7876
+  (0.0ms) rollback transaction
7877
+  (0.0ms) begin transaction
7878
+  (0.0ms) rollback transaction
7879
+  (0.0ms) begin transaction
7880
+  (0.0ms) rollback transaction
7881
+  (0.0ms) begin transaction
7882
+  (0.0ms) rollback transaction
7883
+  (0.0ms) begin transaction
7884
+  (0.0ms) rollback transaction
7885
+  (0.0ms) begin transaction
7886
+  (0.0ms) rollback transaction
7887
+  (0.0ms) begin transaction
7888
+  (0.0ms) rollback transaction
7889
+  (0.0ms) begin transaction
7890
+  (0.0ms) rollback transaction
7891
+  (0.0ms) begin transaction
7892
+  (0.0ms) rollback transaction
7893
+  (0.0ms) begin transaction
7894
+  (0.0ms) rollback transaction
7895
+  (0.0ms) begin transaction
7896
+  (0.0ms) rollback transaction
7897
+  (0.0ms) begin transaction
7898
+  (0.0ms) rollback transaction
7899
+  (0.0ms) begin transaction
7900
+  (0.0ms) rollback transaction
7901
+  (0.0ms) begin transaction
7902
+  (0.2ms) rollback transaction
7903
+  (3.5ms) begin transaction
7904
+  (0.1ms) rollback transaction
7905
+  (0.0ms) begin transaction
7906
+  (0.0ms) rollback transaction
7907
+  (0.0ms) begin transaction
7908
+  (0.0ms) rollback transaction
7909
+  (0.0ms) begin transaction
7910
+  (0.0ms) rollback transaction
7911
+  (0.0ms) begin transaction
7912
+  (0.0ms) rollback transaction
7913
+  (0.0ms) begin transaction
7914
+  (0.0ms) rollback transaction
7915
+  (0.0ms) begin transaction
7916
+  (0.0ms) rollback transaction
7917
+  (0.0ms) begin transaction
7918
+  (0.0ms) rollback transaction
7919
+  (0.0ms) begin transaction
7920
+  (0.0ms) rollback transaction
7921
+  (0.0ms) begin transaction
7922
+  (0.0ms) rollback transaction
7923
+  (0.0ms) begin transaction
7924
+  (0.0ms) rollback transaction
7925
+  (0.0ms) begin transaction
7926
+  (0.0ms) rollback transaction
7927
+  (0.0ms) begin transaction
7928
+  (0.0ms) rollback transaction
7929
+  (0.0ms) begin transaction
7930
+  (0.0ms) rollback transaction
7931
+  (0.0ms) begin transaction
7932
+  (0.2ms) rollback transaction
7933
+  (0.1ms) begin transaction
7934
+  (0.2ms) rollback transaction
7935
+  (0.0ms) begin transaction
7936
+  (0.1ms) rollback transaction
7937
+  (0.0ms) begin transaction
7938
+  (0.2ms) rollback transaction
7939
+  (0.1ms) begin transaction
7940
+  (0.1ms) rollback transaction
7941
+  (0.0ms) begin transaction
7942
+  (0.1ms) rollback transaction
7943
+  (0.1ms) begin transaction
7944
+  (0.2ms) rollback transaction
7945
+  (0.0ms) begin transaction
7946
+  (0.2ms) rollback transaction
7947
+  (0.1ms) begin transaction
7948
+  (0.2ms) rollback transaction
7949
+  (3.8ms) begin transaction
7950
+  (0.1ms) rollback transaction
7951
+  (0.0ms) begin transaction
7952
+  (0.0ms) rollback transaction
7953
+  (0.0ms) begin transaction
7954
+  (0.0ms) rollback transaction
7955
+  (0.0ms) begin transaction
7956
+  (0.0ms) rollback transaction
7957
+  (0.0ms) begin transaction
7958
+  (0.0ms) rollback transaction
7959
+  (0.0ms) begin transaction
7960
+  (0.0ms) rollback transaction
7961
+  (0.0ms) begin transaction
7962
+  (0.0ms) rollback transaction
7963
+  (0.0ms) begin transaction
7964
+  (0.0ms) rollback transaction
7965
+  (0.0ms) begin transaction
7966
+  (0.0ms) rollback transaction
7967
+  (0.0ms) begin transaction
7968
+  (0.0ms) rollback transaction
7969
+  (0.0ms) begin transaction
7970
+  (0.0ms) rollback transaction
7971
+  (0.0ms) begin transaction
7972
+  (0.0ms) rollback transaction
7973
+  (0.0ms) begin transaction
7974
+  (0.0ms) rollback transaction
7975
+  (0.0ms) begin transaction
7976
+  (0.0ms) rollback transaction
7977
+  (0.0ms) begin transaction
7978
+  (0.2ms) rollback transaction
7979
+  (3.5ms) begin transaction
7980
+  (0.1ms) rollback transaction
7981
+  (0.0ms) begin transaction
7982
+  (0.0ms) rollback transaction
7983
+  (0.0ms) begin transaction
7984
+  (0.0ms) rollback transaction
7985
+  (0.0ms) begin transaction
7986
+  (0.0ms) rollback transaction
7987
+  (0.0ms) begin transaction
7988
+  (0.0ms) rollback transaction
7989
+  (0.0ms) begin transaction
7990
+  (0.0ms) rollback transaction
7991
+  (0.0ms) begin transaction
7992
+  (0.0ms) rollback transaction
7993
+  (0.0ms) begin transaction
7994
+  (0.0ms) rollback transaction
7995
+  (0.0ms) begin transaction
7996
+  (0.0ms) rollback transaction
7997
+  (0.0ms) begin transaction
7998
+  (0.0ms) rollback transaction
7999
+  (0.0ms) begin transaction
8000
+  (0.0ms) rollback transaction
8001
+  (0.0ms) begin transaction
8002
+  (0.0ms) rollback transaction
8003
+  (0.0ms) begin transaction
8004
+  (0.0ms) rollback transaction
8005
+  (0.0ms) begin transaction
8006
+  (0.0ms) rollback transaction
8007
+  (0.0ms) begin transaction
8008
+  (0.2ms) rollback transaction
8009
+  (3.5ms) begin transaction
8010
+  (0.1ms) rollback transaction
8011
+  (0.0ms) begin transaction
8012
+  (0.0ms) rollback transaction
8013
+  (0.0ms) begin transaction
8014
+  (0.0ms) rollback transaction
8015
+  (0.0ms) begin transaction
8016
+  (0.0ms) rollback transaction
8017
+  (0.0ms) begin transaction
8018
+  (0.0ms) rollback transaction
8019
+  (0.0ms) begin transaction
8020
+  (0.0ms) rollback transaction
8021
+  (0.0ms) begin transaction
8022
+  (0.0ms) rollback transaction
8023
+  (0.0ms) begin transaction
8024
+  (0.0ms) rollback transaction
8025
+  (0.0ms) begin transaction
8026
+  (0.0ms) rollback transaction
8027
+  (0.0ms) begin transaction
8028
+  (0.0ms) rollback transaction
8029
+  (0.0ms) begin transaction
8030
+  (0.0ms) rollback transaction
8031
+  (0.0ms) begin transaction
8032
+  (0.0ms) rollback transaction
8033
+  (0.0ms) begin transaction
8034
+  (0.0ms) rollback transaction
8035
+  (0.0ms) begin transaction
8036
+  (0.0ms) rollback transaction
8037
+  (0.0ms) begin transaction
8038
+  (0.2ms) rollback transaction
8039
+  (3.6ms) begin transaction
8040
+  (0.1ms) rollback transaction
8041
+  (0.0ms) begin transaction
8042
+  (0.0ms) rollback transaction
8043
+  (0.0ms) begin transaction
8044
+  (0.0ms) rollback transaction
8045
+  (0.0ms) begin transaction
8046
+  (0.0ms) rollback transaction
8047
+  (0.0ms) begin transaction
8048
+  (0.0ms) rollback transaction
8049
+  (0.0ms) begin transaction
8050
+  (0.0ms) rollback transaction
8051
+  (0.0ms) begin transaction
8052
+  (0.0ms) rollback transaction
8053
+  (0.0ms) begin transaction
8054
+  (0.0ms) rollback transaction
8055
+  (0.0ms) begin transaction
8056
+  (0.0ms) rollback transaction
8057
+  (0.0ms) begin transaction
8058
+  (0.0ms) rollback transaction
8059
+  (0.0ms) begin transaction
8060
+  (0.0ms) rollback transaction
8061
+  (0.0ms) begin transaction
8062
+  (0.0ms) rollback transaction
8063
+  (0.0ms) begin transaction
8064
+  (0.3ms) rollback transaction
8065
+ Interrupt: : rollback transaction
8066
+  (3.6ms) begin transaction
8067
+  (0.2ms) rollback transaction
8068
+  (0.1ms) begin transaction
8069
+  (0.1ms) rollback transaction
8070
+  (0.1ms) begin transaction
8071
+  (0.1ms) rollback transaction
8072
+  (0.0ms) begin transaction
8073
+  (0.0ms) rollback transaction
8074
+  (0.0ms) begin transaction
8075
+  (0.0ms) rollback transaction
8076
+  (0.0ms) begin transaction
8077
+  (0.0ms) rollback transaction
8078
+  (0.0ms) begin transaction
8079
+  (0.0ms) rollback transaction
8080
+  (0.0ms) begin transaction
8081
+  (0.0ms) rollback transaction
8082
+  (0.0ms) begin transaction
8083
+  (0.0ms) rollback transaction
8084
+  (0.0ms) begin transaction
8085
+  (0.0ms) rollback transaction
8086
+  (0.0ms) begin transaction
8087
+  (0.0ms) rollback transaction
8088
+  (0.0ms) begin transaction
8089
+  (0.0ms) rollback transaction
8090
+  (0.0ms) begin transaction
8091
+  (0.0ms) rollback transaction
8092
+  (0.0ms) begin transaction
8093
+  (0.0ms) rollback transaction
8094
+  (0.0ms) begin transaction
8095
+  (0.1ms) rollback transaction
8096
+  (0.0ms) begin transaction
8097
+  (0.2ms) rollback transaction
8098
+  (3.8ms) begin transaction
8099
+  (0.2ms) rollback transaction
8100
+  (0.1ms) begin transaction
8101
+  (0.2ms) rollback transaction
8102
+  (0.1ms) begin transaction
8103
+  (0.1ms) rollback transaction
8104
+  (0.0ms) begin transaction
8105
+  (0.2ms) rollback transaction
8106
+  (0.1ms) begin transaction
8107
+  (0.2ms) rollback transaction
8108
+  (0.1ms) begin transaction
8109
+  (0.1ms) rollback transaction
8110
+  (0.1ms) begin transaction
8111
+  (0.1ms) rollback transaction
8112
+  (0.1ms) begin transaction
8113
+  (0.0ms) rollback transaction
8114
+  (0.1ms) begin transaction
8115
+  (0.0ms) rollback transaction
8116
+  (0.3ms) begin transaction
8117
+  (0.0ms) rollback transaction
8118
+  (0.1ms) begin transaction
8119
+  (0.0ms) rollback transaction
8120
+  (0.3ms) begin transaction
8121
+  (0.0ms) rollback transaction
8122
+  (0.1ms) begin transaction
8123
+  (0.0ms) rollback transaction
8124
+  (0.1ms) begin transaction
8125
+  (0.0ms) rollback transaction
8126
+  (0.1ms) begin transaction
8127
+  (0.0ms) rollback transaction
8128
+  (0.3ms) begin transaction
8129
+  (0.1ms) rollback transaction
8130
+  (0.1ms) begin transaction
8131
+  (0.0ms) rollback transaction
8132
+  (0.3ms) begin transaction
8133
+  (0.0ms) rollback transaction
8134
+  (0.1ms) begin transaction
8135
+  (0.0ms) rollback transaction
8136
+  (0.3ms) begin transaction
8137
+  (0.0ms) rollback transaction
8138
+  (0.1ms) begin transaction
8139
+  (0.1ms) rollback transaction
8140
+  (0.3ms) begin transaction
8141
+  (0.0ms) rollback transaction
8142
+  (0.1ms) begin transaction
8143
+  (0.0ms) rollback transaction
8144
+  (0.3ms) begin transaction
8145
+  (0.1ms) rollback transaction
8146
+  (0.1ms) begin transaction
8147
+  (0.1ms) rollback transaction
8148
+  (0.3ms) begin transaction
8149
+  (0.0ms) rollback transaction
8150
+  (0.1ms) begin transaction
8151
+  (0.0ms) rollback transaction
8152
+  (0.1ms) begin transaction
8153
+  (0.0ms) rollback transaction
8154
+  (0.1ms) begin transaction
8155
+  (0.0ms) rollback transaction
8156
+  (0.1ms) begin transaction
8157
+  (0.0ms) rollback transaction
8158
+  (0.1ms) begin transaction
8159
+  (0.0ms) rollback transaction
8160
+  (0.1ms) begin transaction
8161
+  (0.0ms) rollback transaction
8162
+  (0.1ms) begin transaction
8163
+  (0.0ms) rollback transaction
8164
+  (0.1ms) begin transaction
8165
+  (0.0ms) rollback transaction
8166
+  (0.1ms) begin transaction
8167
+  (0.0ms) rollback transaction
8168
+  (0.3ms) begin transaction
8169
+  (0.0ms) rollback transaction
8170
+  (0.1ms) begin transaction
8171
+  (0.0ms) rollback transaction
8172
+  (0.3ms) begin transaction
8173
+  (0.1ms) rollback transaction
8174
+  (0.1ms) begin transaction
8175
+  (0.0ms) rollback transaction
8176
+  (0.3ms) begin transaction
8177
+  (0.0ms) rollback transaction
8178
+  (0.3ms) begin transaction
8179
+  (0.1ms) rollback transaction
8180
+  (0.3ms) begin transaction
8181
+  (0.0ms) rollback transaction
8182
+  (0.3ms) begin transaction
8183
+  (0.0ms) rollback transaction
8184
+  (0.3ms) begin transaction
8185
+  (0.0ms) rollback transaction
8186
+  (0.3ms) begin transaction
8187
+  (0.0ms) rollback transaction
8188
+  (0.3ms) begin transaction
8189
+  (0.0ms) rollback transaction
8190
+  (0.3ms) begin transaction
8191
+  (0.0ms) rollback transaction
8192
+  (0.3ms) begin transaction
8193
+  (0.0ms) rollback transaction
8194
+  (0.3ms) begin transaction
8195
+  (0.0ms) rollback transaction
8196
+  (0.5ms) begin transaction
8197
+  (0.1ms) rollback transaction
8198
+  (0.3ms) begin transaction
8199
+  (0.1ms) rollback transaction
8200
+  (0.3ms) begin transaction
8201
+  (0.0ms) rollback transaction
8202
+  (0.1ms) begin transaction
8203
+  (0.0ms) rollback transaction
8204
+  (0.3ms) begin transaction
8205
+  (0.0ms) rollback transaction
8206
+  (0.1ms) begin transaction
8207
+  (0.0ms) rollback transaction
8208
+  (0.3ms) begin transaction
8209
+  (0.0ms) rollback transaction
8210
+  (0.1ms) begin transaction
8211
+  (0.0ms) rollback transaction
8212
+  (0.3ms) begin transaction
8213
+  (0.0ms) rollback transaction
8214
+  (0.1ms) begin transaction
8215
+  (0.0ms) rollback transaction
8216
+  (0.3ms) begin transaction
8217
+  (0.0ms) rollback transaction
8218
+  (0.3ms) begin transaction
8219
+  (0.0ms) rollback transaction
8220
+  (0.1ms) begin transaction
8221
+  (0.0ms) rollback transaction
8222
+  (0.3ms) begin transaction
8223
+  (0.0ms) rollback transaction
8224
+  (0.3ms) begin transaction
8225
+  (0.0ms) rollback transaction
8226
+  (0.4ms) begin transaction
8227
+  (0.1ms) rollback transaction
8228
+  (0.3ms) begin transaction
8229
+  (0.0ms) rollback transaction
8230
+  (0.4ms) begin transaction
8231
+  (0.1ms) rollback transaction
8232
+  (0.4ms) begin transaction
8233
+  (0.1ms) rollback transaction
8234
+  (0.3ms) begin transaction
8235
+  (0.0ms) rollback transaction
8236
+  (0.3ms) begin transaction
8237
+  (0.0ms) rollback transaction
8238
+  (0.3ms) begin transaction
8239
+  (0.0ms) rollback transaction
8240
+  (0.3ms) begin transaction
8241
+  (0.1ms) rollback transaction
8242
+  (0.3ms) begin transaction
8243
+  (0.0ms) rollback transaction
8244
+  (0.3ms) begin transaction
8245
+  (0.0ms) rollback transaction
8246
+  (0.3ms) begin transaction
8247
+  (0.0ms) rollback transaction
8248
+  (0.3ms) begin transaction
8249
+  (0.0ms) rollback transaction
8250
+  (0.3ms) begin transaction
8251
+  (0.0ms) rollback transaction
8252
+  (0.3ms) begin transaction
8253
+  (0.0ms) rollback transaction
8254
+  (0.3ms) begin transaction
8255
+  (0.0ms) rollback transaction
8256
+  (0.3ms) begin transaction
8257
+  (0.0ms) rollback transaction
8258
+  (0.3ms) begin transaction
8259
+  (0.0ms) rollback transaction
8260
+  (0.3ms) begin transaction
8261
+  (0.1ms) rollback transaction
8262
+  (0.3ms) begin transaction
8263
+  (0.0ms) rollback transaction
8264
+  (0.3ms) begin transaction
8265
+  (0.0ms) rollback transaction
8266
+  (0.4ms) begin transaction
8267
+  (0.1ms) rollback transaction
8268
+  (0.3ms) begin transaction
8269
+  (0.0ms) rollback transaction
8270
+  (0.3ms) begin transaction
8271
+  (0.0ms) rollback transaction
8272
+  (0.3ms) begin transaction
8273
+  (0.0ms) rollback transaction
8274
+  (0.3ms) begin transaction
8275
+  (0.0ms) rollback transaction
8276
+  (0.3ms) begin transaction
8277
+  (0.0ms) rollback transaction
8278
+  (0.3ms) begin transaction
8279
+  (0.0ms) rollback transaction
8280
+  (0.3ms) begin transaction
8281
+  (0.1ms) rollback transaction
8282
+  (0.4ms) begin transaction
8283
+  (0.1ms) rollback transaction
8284
+  (0.3ms) begin transaction
8285
+  (0.0ms) rollback transaction
8286
+  (0.3ms) begin transaction
8287
+  (0.1ms) rollback transaction
8288
+  (0.3ms) begin transaction
8289
+  (0.0ms) rollback transaction
8290
+  (0.3ms) begin transaction
8291
+  (0.0ms) rollback transaction
8292
+  (0.4ms) begin transaction
8293
+  (0.1ms) rollback transaction
8294
+  (0.3ms) begin transaction
8295
+  (0.0ms) rollback transaction
8296
+  (0.3ms) begin transaction
8297
+  (0.0ms) rollback transaction
8298
+  (0.3ms) begin transaction
8299
+  (0.0ms) rollback transaction
8300
+  (0.3ms) begin transaction
8301
+  (0.0ms) rollback transaction
8302
+  (0.4ms) begin transaction
8303
+  (0.1ms) rollback transaction
8304
+  (0.3ms) begin transaction
8305
+  (0.0ms) rollback transaction
8306
+  (0.3ms) begin transaction
8307
+  (0.0ms) rollback transaction
8308
+  (0.3ms) begin transaction
8309
+  (0.0ms) rollback transaction
8310
+  (0.4ms) begin transaction
8311
+  (0.1ms) rollback transaction
8312
+  (0.3ms) begin transaction
8313
+  (0.1ms) rollback transaction
8314
+  (0.3ms) begin transaction
8315
+  (0.0ms) rollback transaction
8316
+  (0.3ms) begin transaction
8317
+  (0.0ms) rollback transaction
8318
+  (0.3ms) begin transaction
8319
+  (0.0ms) rollback transaction
8320
+  (0.3ms) begin transaction
8321
+  (0.1ms) rollback transaction
8322
+  (0.3ms) begin transaction
8323
+  (0.1ms) rollback transaction
8324
+  (0.3ms) begin transaction
8325
+  (0.0ms) rollback transaction
8326
+  (0.3ms) begin transaction
8327
+  (0.1ms) rollback transaction
8328
+  (0.4ms) begin transaction
8329
+  (0.0ms) rollback transaction
8330
+  (0.4ms) begin transaction
8331
+  (0.1ms) rollback transaction
8332
+  (0.3ms) begin transaction
8333
+  (0.0ms) rollback transaction
8334
+  (0.3ms) begin transaction
8335
+  (0.0ms) rollback transaction
8336
+  (0.4ms) begin transaction
8337
+  (0.1ms) rollback transaction
8338
+  (0.3ms) begin transaction
8339
+  (0.0ms) rollback transaction
8340
+  (0.4ms) begin transaction
8341
+  (0.0ms) rollback transaction
8342
+  (0.4ms) begin transaction
8343
+  (0.1ms) rollback transaction
8344
+  (0.3ms) begin transaction
8345
+  (0.0ms) rollback transaction
8346
+  (0.4ms) begin transaction
8347
+  (0.0ms) rollback transaction
8348
+  (0.3ms) begin transaction
8349
+  (0.0ms) rollback transaction
8350
+  (0.4ms) begin transaction
8351
+  (0.0ms) rollback transaction
8352
+  (0.1ms) begin transaction
8353
+  (0.0ms) rollback transaction
8354
+  (0.3ms) begin transaction
8355
+  (0.1ms) rollback transaction
8356
+  (0.4ms) begin transaction
8357
+  (0.1ms) rollback transaction
8358
+  (0.1ms) begin transaction
8359
+  (0.0ms) rollback transaction
8360
+  (0.3ms) begin transaction
8361
+  (0.0ms) rollback transaction
8362
+  (0.1ms) begin transaction
8363
+  (0.0ms) rollback transaction
8364
+  (0.3ms) begin transaction
8365
+  (0.0ms) rollback transaction
8366
+  (0.1ms) begin transaction
8367
+  (0.0ms) rollback transaction
8368
+  (0.3ms) begin transaction
8369
+  (0.1ms) rollback transaction
8370
+  (0.8ms) begin transaction
8371
+  (0.1ms) rollback transaction
8372
+  (0.3ms) begin transaction
8373
+  (0.0ms) rollback transaction
8374
+  (0.3ms) begin transaction
8375
+  (0.1ms) rollback transaction
8376
+  (0.3ms) begin transaction
8377
+  (0.0ms) rollback transaction
8378
+  (0.4ms) begin transaction
8379
+  (0.0ms) rollback transaction
8380
+  (0.3ms) begin transaction
8381
+  (0.0ms) rollback transaction
8382
+  (0.3ms) begin transaction
8383
+  (0.0ms) rollback transaction
8384
+  (0.3ms) begin transaction
8385
+  (0.0ms) rollback transaction
8386
+  (0.1ms) begin transaction
8387
+  (0.0ms) rollback transaction
8388
+  (0.3ms) begin transaction
8389
+  (0.0ms) rollback transaction
8390
+  (0.3ms) begin transaction
8391
+  (0.0ms) rollback transaction
8392
+  (0.3ms) begin transaction
8393
+  (0.0ms) rollback transaction
8394
+  (0.3ms) begin transaction
8395
+  (0.1ms) rollback transaction
8396
+  (0.3ms) begin transaction
8397
+  (0.1ms) rollback transaction
8398
+  (0.3ms) begin transaction
8399
+  (0.1ms) rollback transaction
8400
+  (0.3ms) begin transaction
8401
+  (0.1ms) rollback transaction
8402
+  (0.4ms) begin transaction
8403
+  (0.1ms) rollback transaction
8404
+  (0.3ms) begin transaction
8405
+  (0.0ms) rollback transaction
8406
+  (0.3ms) begin transaction
8407
+  (0.0ms) rollback transaction
8408
+  (0.3ms) begin transaction
8409
+  (0.0ms) rollback transaction
8410
+  (0.3ms) begin transaction
8411
+  (0.0ms) rollback transaction
8412
+  (0.3ms) begin transaction
8413
+  (0.0ms) rollback transaction
8414
+  (0.3ms) begin transaction
8415
+  (0.0ms) rollback transaction
8416
+  (0.3ms) begin transaction
8417
+  (0.0ms) rollback transaction
8418
+  (0.3ms) begin transaction
8419
+  (0.0ms) rollback transaction
8420
+  (0.3ms) begin transaction
8421
+  (0.0ms) rollback transaction
8422
+  (0.4ms) begin transaction
8423
+  (0.1ms) rollback transaction
8424
+  (0.3ms) begin transaction
8425
+  (0.0ms) rollback transaction
8426
+  (0.3ms) begin transaction
8427
+  (0.0ms) rollback transaction
8428
+  (0.4ms) begin transaction
8429
+  (0.0ms) rollback transaction
8430
+  (0.4ms) begin transaction
8431
+  (0.1ms) rollback transaction
8432
+  (0.3ms) begin transaction
8433
+  (0.1ms) rollback transaction
8434
+  (0.1ms) begin transaction
8435
+  (0.0ms) rollback transaction
8436
+  (0.4ms) begin transaction
8437
+  (0.1ms) rollback transaction
8438
+  (0.3ms) begin transaction
8439
+  (0.0ms) rollback transaction
8440
+  (0.4ms) begin transaction
8441
+  (0.1ms) rollback transaction
8442
+  (0.3ms) begin transaction
8443
+  (0.0ms) rollback transaction