Help language development. Donate to The Perl Foundation

MongoDB cpan:MARTIMM last updated on 2020-07-19

doc/Design/run-command-find.txt
@startuml

title performing I/O

[*] --> Client
Client: Process uri in Client

Client -> Server : uri-data
state Server {
  [*] -> monitor
  monitor: Server starts monitoring
  monitor: Stops at end of Server life
}

Client -> Database: Client
Database: database operations

state runcommand {
  Database -> command: Database
  command -> find: query
  command: send command to server

  monitor -> select: server-data

  find --> select
  select: select process to find proper server
  select --> find: Server

  find --> query: server
  query: encodes query and send to server
  query: decodes result
  query --> find: result

}

find -> Cursor: cursor-data
Cursor: stores docs
Cursor: retrieves new docs

Cursor -> fetch: document
fetch --> getmore
getmore: encodes query and send to server
getmore: decodes result
getmore --> fetch: new-documents


fetch -> [*]
@enduml