ã¯ã©ã¹: Mongo::Database::View
- ç¶æ¿:
-
ãªãã¸ã§ã¯ã
- ãªãã¸ã§ã¯ã
- Mongo::Database::View
- 次ã«ããæ¡å¼µæ©è½ã
- 転éå¯è½
- 次ã®ãã¨ãå«ã¾ãã¾ãã
- åæå¯è½ãã«ã¼ã½ã«::NonTailable ãCursorHost ãå試è¡å¯è½
- å®ç¾©:
- lib/mongo/database/view.rb
Overview
ãã¼ã¿ãã¼ã¹ã® ãã¥ã¼ ã表ãã¯ã©ã¹ã
ã¤ã³ã¹ã¿ã³ã¹å±æ§ã®æ¦è¦ãæãããã
-
# batch_size =æ´æ°
readOnly
Batch_size listCollections ã³ãã³ããéä¿¡ããéã®çµæã®ãããã®ãµã¤ãºã
-
ã³ã¬ã¯ã·ã§ã³ï½ ã³ã¬ã¯ã·ã§ã³
readOnly
ã³ã¬ã¯ã·ã§ã³ ã³ãã³ãã®ã³ã¬ã¯ã·ã§ã³ã
- #database â Object readOnly private
-
#limit â Integer
readOnly
ã³ãã³ããéä¿¡ããã¨ãã« å¶éãå¶éãã¾ãã
-
# operation_timeout_ms = æ´æ° | nil |ãã¥ã¼ã«ãªãã·ã§ã³ã¨ãã¦æ¸¡ããã timeout_ms å¤ã
readOnly
private
æ´æ° | nil |ãã¥ã¼ã«ãªãã·ã§ã³ã¨ãã¦æ¸¡ããã timeout_ms å¤ã
CursorHost ã«å«ã¾ãã屿§
ã¤ã³ã¹ã¿ã³ã¹ ã¡ã½ããã®æ¦è¦ãæãããã
-
#éè¨ï¼ãã¤ãã©ã¤ã³ããªãã·ã§ã³ = {}ï¼ = Collection::View::Aggregation
private
ãã¼ã¿ãã¼ã¹ ãã¥ã¼ã§éè¨ãå®è¡ãã¾ãã
-
# collection_names ï¼ãªãã·ã§ã³ = {}ï¼= Array[String]<String>
ãã¼ã¿ãã¼ã¹å ã®éã·ã¹ãã ã³ã¬ã¯ã·ã§ã³ã®ãã¹ã¦ã®ååãåå¾ãã¾ãã
-
#initialize(database, options = {}) â View
ã³ã³ã¹ãã©ã¯ã¿ã¼
æ°ãããã¼ã¿ãã¼ã¹ ãã¥ã¼ã使ãã¾ãã
-
list_collections ï¼ãªãã·ã§ã³ çªå· = {}ï¼= Array[Hash]<Hash>
ãã¼ã¿ãã¼ã¹å ã®ãã¹ã¦ã®ã³ã¬ã¯ã·ã§ã³ã«é¢ããæ å ±ãåå¾ãã¾ãã
-
# operation_timeoutsï¼opts = {}ï¼ = ããã·ã¥
private
æä½ã¬ãã«ã§è¨å®ããã Timeout_ms å¤ï¼åå¨ããå ´åï¼ã
-
#timeout_ms â Integer | nil
ãã®æä½ã«ä½¿ç¨ãã timeout_ms å¤ ããã¥ã¼ã®ãªãã·ã§ã³ã¨ãã¦æå®ããããããã¼ã¿ãã¼ã¹ããç¶æ¿ããã ã
Cursor ã«å«ã¾ããã¡ã½ãã::NonTailable
CursorHost ã«å«ã¾ããã¡ã½ãã
å試è¡å¯è½ãª ã«å«ã¾ããã¡ã½ãã
#read_workerã#select_serverã#with_overload_retryã#write_worker
ã³ã³ã¹ãã©ã¯ã¿ã¼ã®è©³ç´°
#initialize(database, options = {}) â View
æ°ãããã¼ã¿ãã¼ã¹ ãã¥ã¼ã使ãã¾ãã
143 144 145 146 147 148 149 150 151 152 |
# ãã¡ã¤ã« 'lib/mongo/ ãã¼ã¿ãã¼ã¹/view.rb', è¡ 143 ããã©ã«ã åæå(database, = {}) @database = database @operation_timeout_ms = .åé¤(:timeout_ms) validate_timeout_mode!() @batch_size = nil @limit = nil @collection = @database[Database::ã³ãã³ã] end |
ã¤ã³ã¹ã¿ã³ã¹å±æ§ã®è©³ç´°
# batch_size =æ´æ°ï¼èªã¿åãå°ç¨ï¼
Batch_size listCollections ã³ãã³ããéä¿¡ããéã®çµæã®ãããã®ãµã¤ãºãè¿ãã¾ãã
38 39 40 |
# ãã¡ã¤ã« 'lib/mongo/ ãã¼ã¿ãã¼ã¹/view.rb', è¡ 38 ããã©ã«ã batch_size @batch_size end |
#ã³ã¬ã¯ã·ã§ã³=ã³ã¬ã¯ã·ã§ã³ï¼èªã¿åãå°ç¨ï¼
ã³ã¬ã¯ã·ã§ã³ ã³ãã³ãã®ã³ã¬ã¯ã·ã§ã³ãè¿ãã¾ãã
44 45 46 |
# ãã¡ã¤ã« 'lib/mongo/ ãã¼ã¿ãã¼ã¹/view.rb', è¡ 44 ããã©ã«ã ã³ã¬ã¯ã·ã§ã³ @collection end |
# database =ãªãã¸ã§ã¯ãï¼èªã¿åãå°ç¨ï¼
ãã®ã¡ã½ããã¯ããã©ã¤ãã¼ã API ã®ä¸é¨ã§ãã ãã®ã¡ã½ããã¯å°æ¥åé¤ã¾ãã¯å¤æ´ãããå¯è½æ§ããããããå¯è½ãªéã使ç¨ããªãã§ãã ããã
155 156 157 |
# ãã¡ã¤ã« 'lib/mongo/ ãã¼ã¿ãã¼ã¹/view.rb', è¡ 155 ããã©ã«ã database @database end |
æ°å¶éï½æ´æ°ï¼èªã¿åãå°ç¨ï¼
ã³ãã³ãã®éä¿¡æã« limit ãè¿ãã¾ãã
41 42 43 |
# ãã¡ã¤ã« 'lib/mongo/ ãã¼ã¿ãã¼ã¹/view.rb', è¡ 41 ããã©ã«ã limit @limit end |
# operation_timeout_ms = æ´æ° | nil |ãã¥ã¼ã«ãªãã·ã§ã³ã¨ãã¦æ¸¡ããã timeout_ms å¤ãï¼èªã¿åãå°ç¨ï¼
ãã®ã¡ã½ããã¯ããã©ã¤ãã¼ã API ã®ä¸é¨ã§ãã ãã®ã¡ã½ããã¯å°æ¥åé¤ã¾ãã¯å¤æ´ãããå¯è½æ§ããããããå¯è½ãªéã使ç¨ããªãã§ãã ããã
æ´æ° | ãè¿ãã¾ãnil |ãã¥ã¼ã«ãªãã·ã§ã³ã¨ãã¦æ¸¡ããã timeout_ms å¤ã
161 162 163 |
# ãã¡ã¤ã« 'lib/mongo/ ãã¼ã¿ãã¼ã¹/view.rb', è¡ 161 ããã©ã«ã operation_timeout_ms @operation_timeout_ms end |
ã¤ã³ã¹ã¿ã³ã¹ ã¡ã½ããã®è©³ç´°
#éè¨ï¼ãã¤ãã©ã¤ã³ããªãã·ã§ã³ = {}ï¼ = Collection::View::Aggregation
ãã®ã¡ã½ããã¯ããã©ã¤ãã¼ã API ã®ä¸é¨ã§ãã ãã®ã¡ã½ããã¯å°æ¥åé¤ã¾ãã¯å¤æ´ãããå¯è½æ§ããããããå¯è½ãªéã使ç¨ããªãã§ãã ããã
ãã¼ã¿ãã¼ã¹ ãã¥ã¼ã§éè¨ãå®è¡ãã¾ãã
177 178 179 |
# ãã¡ã¤ã« 'lib/mongo/ ãã¼ã¿ãã¼ã¹/view.rb', è¡ 177 ããã©ã«ã éè¨(ãã¤ãã©ã¤ã³, = {}) ã³ã¬ã¯ã·ã§ã³::ãã¥ã¼::éè¨.æ°çæ å ±(èªå·±, ãã¤ãã©ã¤ã³, ) end |
# collection_names ï¼ãªãã·ã§ã³ = {}ï¼= Array[String ]<String>
è¿ãããã³ã¬ã¯ã·ã§ã³åã®ã»ããã¯ããªã¯ã¨ã¹ããæºãã MongoDB ãµã¼ãã¼ã®ãã¼ã¸ã§ã³ã«ãã£ã¦ç°ãªãã¾ãã
ãã¼ã¿ãã¼ã¹å ã®éã·ã¹ãã ã³ã¬ã¯ã·ã§ã³ã®ãã¹ã¦ã®ååãåå¾ãã¾ãã
See https://mongodb.com/ja-jp/docs/manual/reference/command/listCollections/
for more information and usage.
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# ãã¡ã¤ã« 'lib/mongo/ ãã¼ã¿ãã¼ã¹/view.rb', è¡ 75 ããã©ã«ã collection_names( = {}) @batch_size = [:batch_size] ã»ãã·ã§ã³ = ã¯ã©ã¤ã¢ã³ã.get_session() context = æä½::Context.æ°çæ å ±( ã¯ã©ã¤ã¢ã³ã: ã¯ã©ã¤ã¢ã³ã, ã»ãã·ã§ã³: ã»ãã·ã§ã³, operation_timeouts: operation_timeouts() ) cursor = read_with_retry_cursor(ã»ãã·ã§ã³, ServerSelector.ãã©ã¤ããª, èªå·±, context: context) è¡ã |ãµã¼ãã¼| send_initial_query(ãµã¼ãã¼, ã»ãã·ã§ã³, context, .merge(name_only: true)) end cursor.map { |info| info[' name '] } .æå¦ { |name| name.start_with?('ã·ã¹ãã ã§ãã ') || name.include?('$') } end |
list_collections ï¼ãªãã·ã§ã³ çªå· = {}ï¼= Array[Hash ]<Hash>
è¿ãããã³ã¬ã¯ã·ã§ã³ã®ã»ããã¨ãã³ã¬ã¯ã·ã§ã³ãã¨ã®æ å ±ããã·ã¥ã®ã¹ãã¼ãã¯ããªã¯ã¨ã¹ããæºãã MongoDB ãµã¼ãã¼ã®ãã¼ã¸ã§ã³ã«ãã£ã¦ç°ãªãã¾ãã
ãã¼ã¿ãã¼ã¹å ã®ãã¹ã¦ã®ã³ã¬ã¯ã·ã§ã³ã«é¢ããæ å ±ãåå¾ãã¾ãã
121 122 123 124 |
# ãã¡ã¤ã« 'lib/mongo/ ãã¼ã¿ãã¼ã¹/view.rb', è¡ 121 ããã©ã«ã list_collections( = {}) ã»ãã·ã§ã³ = ã¯ã©ã¤ã¢ã³ã.get_session() collections_info(ã»ãã·ã§ã³, ServerSelector.ãã©ã¤ããª, ) end |
# operation_timeoutsï¼opts = {}ï¼ = ããã·ã¥
ãã®ã¡ã½ããã¯ããã©ã¤ãã¼ã API ã®ä¸é¨ã§ãã ãã®ã¡ã½ããã¯å°æ¥åé¤ã¾ãã¯å¤æ´ãããå¯è½æ§ããããããå¯è½ãªéã使ç¨ããªãã§ãã ããã
æä½ã¬ãã«ã§è¨å®ããã timeout_ms å¤ï¼åå¨ããå ´åï¼ãè¿ãã¾ãã
192 193 194 195 196 197 198 199 200 |
# ãã¡ã¤ã« 'lib/mongo/ ãã¼ã¿ãã¼ã¹/view.rb', è¡ 192 ããã©ã«ã operation_timeouts(ops = {}) {}.ã¿ãã è¡ã |çµæ| å ´å ops[:timeout_ms] || operation_timeout_ms çµæ[: operation_timeout_ms] = ops.åé¤(:timeout_ms) || operation_timeout_ms else çµæ[:in inherited_timeout_ms] = database.timeout_ms end end end |
#timeout_ms â Integer | nil
ãã®æä½ã«ä½¿ç¨ãã timeout_ms å¤ ããã¥ã¼ã®ãªãã·ã§ã³ã¨ãã¦æå®ããããããã¼ã¿ãã¼ã¹ããç¶æ¿ããã ã
185 186 187 |
# ãã¡ã¤ã« 'lib/mongo/ ãã¼ã¿ãã¼ã¹/view.rb', è¡ 185 ããã©ã«ã timeout_ms operation_timeout_ms || database.timeout_ms end |