0% found this document useful (0 votes)
3 views54 pages

Mastering Mongodb 3 X An Expert S Guide To Building Fault Tolerant Mongodb Applications 1St Ed Edition Alex Giamas PDF Version

Mastering MongoDB 3.x is a comprehensive guide by Alex Giamas focused on building fault-tolerant applications using MongoDB. The book covers various aspects of MongoDB, including schema design, CRUD operations, advanced querying, and aggregation techniques. It is available in PDF format and was published by Packt Publishing in 2017.

Uploaded by

meihuriye6764
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views54 pages

Mastering Mongodb 3 X An Expert S Guide To Building Fault Tolerant Mongodb Applications 1St Ed Edition Alex Giamas PDF Version

Mastering MongoDB 3.x is a comprehensive guide by Alex Giamas focused on building fault-tolerant applications using MongoDB. The book covers various aspects of MongoDB, including schema design, CRUD operations, advanced querying, and aggregation techniques. It is available in PDF format and was published by Packt Publishing in 2017.

Uploaded by

meihuriye6764
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 54

Mastering MongoDB 3 x an expert s guide to building

fault tolerant MongoDB applications 1st ed Edition


Alex Giamas pdf version

Sold on ebookfinal.com
( 4.7/5.0 ★ | 346 downloads )

https://ebookfinal.com/download/mastering-mongodb-3-x-an-expert-s-
guide-to-building-fault-tolerant-mongodb-applications-1st-ed-
edition-alex-giamas/
Mastering MongoDB 3 x an expert s guide to building fault
tolerant MongoDB applications 1st ed Edition Alex Giamas Pdf
Download

EBOOK

Available Formats

■ PDF eBook Study Guide Ebook

EXCLUSIVE 2025 ACADEMIC EDITION – LIMITED RELEASE

Available Instantly Access Library


Here are some recommended products for you. Click the link to
download, or explore more at ebookfinal

MongoDB Cookbook 2nd Edition Cyrus Dasadia

https://ebookfinal.com/download/mongodb-cookbook-2nd-edition-cyrus-
dasadia/

Web Development with MongoDB and NodeJS 2nd Edition Build


an interactive and full featured web application from
scratch using Node js and MongoDB Mithun Satheesh
https://ebookfinal.com/download/web-development-with-mongodb-and-
nodejs-2nd-edition-build-an-interactive-and-full-featured-web-
application-from-scratch-using-node-js-and-mongodb-mithun-satheesh/

Web Development with MongoDB and Node 3rd Edition D’Mello

https://ebookfinal.com/download/web-development-with-mongodb-and-
node-3rd-edition-dmello/

A Beginner s Guide To BorderManager 3 x Third Edition


Revision 1 Anonymous

https://ebookfinal.com/download/a-beginner-s-guide-to-
bordermanager-3-x-third-edition-revision-1-anonymous/
Web Development with MongoDB and Node Third Edition Bruno
D'Mello Joseph Mithun Satheesh

https://ebookfinal.com/download/web-development-with-mongodb-and-node-
third-edition-bruno-dmello-joseph-mithun-satheesh/

Mastering Financial Modeling A Professional s Guide to


Building Financial Models in Excel 1st Edition Eric
Soubeiga
https://ebookfinal.com/download/mastering-financial-modeling-a-
professional-s-guide-to-building-financial-models-in-excel-1st-
edition-eric-soubeiga/

MongoDB Applied Design Patterns Practical Use Cases with


the Leading NoSQL Database 1st Edition Rick Copeland

https://ebookfinal.com/download/mongodb-applied-design-patterns-
practical-use-cases-with-the-leading-nosql-database-1st-edition-rick-
copeland/

Making the Time An Expert Guide to Cross Country Riding


1st Edition Stuart Tinney

https://ebookfinal.com/download/making-the-time-an-expert-guide-to-
cross-country-riding-1st-edition-stuart-tinney/

Mastering Technical Mathematics 3 e 3rd Edition Edition


Gibilisco S.

https://ebookfinal.com/download/mastering-technical-
mathematics-3-e-3rd-edition-edition-gibilisco-s/
Mastering MongoDB 3 x an expert s guide to building
fault tolerant MongoDB applications 1st ed Edition Alex
Giamas Digital Instant Download
Author(s): Alex Giamas
ISBN(s): 9781783982615, 1783982616
Edition: 1st ed
File Details: PDF, 3.16 MB
Year: 2017
Language: english
Mastering MongoDB 3.x

An expert's guide to building fault-tolerant MongoDB


applications

Alex Giamas

BIRMINGHAM - MUMBAI
Mastering MongoDB 3.x
Copyright © 2017 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or
transmitted in any form or by any means, without the prior written permission of the
publisher, except in the case of brief quotations embedded in critical articles or reviews.

Every effort has been made in the preparation of this book to ensure the accuracy of the
information presented. However, the information contained in this book is sold without
warranty, either express or implied. Neither the author, nor Packt Publishing, and its
dealers and distributors will be held liable for any damages caused or alleged to be caused
directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information about all of the
companies and products mentioned in this book by the appropriate use of capitals.
However, Packt Publishing cannot guarantee the accuracy of this information.

First published: November 2017

Production reference: 1151117


Published by Packt Publishing Ltd.
Livery Place
35 Livery Street
Birmingham
B3 2PB, UK.
ISBN 978-1-78398-260-8

www.packtpub.com
Credits

Author Copy Editors


Alex Giamas Safis Editing

Reviewers Project Coordinator


Juan Tomás Oliva Ramos Nidhi Joshi
Nilap Shah

Commissioning Editor Proofreader


Amey Varangaonkar Safis Editing

Acquisition Editor Indexer


Vinay Argekar Aishwarya Gangawane

Content Development Editor Graphics


Mayur Pawanikar Tania Dutta

Technical Editor Production Coordinator


Prasad Ramesh Shantanu Zagade
About the Author
Alex Giamas is a Senior Software Engineer at the Department for International Trade, UK
Government. He has also worked as a consultant for various startups. He is an experienced
professional in systems engineering, NoSQL and big data technologies, with experience
spanning from co-founding a digital health startup to Fortune 15 companies.

He has been developing using MongoDB since 2009 and early 1.x versions, using it for
several projects around data storage and analytical processing. He has been developing in
Apache Hadoop since 2007 while working on its incubation.

He has worked with a wide array of NoSQL and big data technologies, building scalable
and highly available distributed software systems in C++, Java, Ruby and Python.

Alex holds an MSc from Carnegie Mellon University in Information Networking and has
attended professional courses in Stanford University. He is a graduate from National
Technical University of Athens, Greece in Electrical and Computer Engineering. He is a
MongoDB Certified developer, a Cloudera Certified Developer for Apache Hadoop and
Data Science essentials.

He publishes regularly for the past 4 years at InfoQ in NoSQL, big data and data science
topics.

I would like to thank my parents for their support and advice all these years.

I would like to thank my fiancé Mary for her patience and support throughout the time,
days and nights, weekdays and weekends I spent writing this book.
About the Reviewers
Juan Tomás Oliva Ramos is an environmental engineer from the University of Guanajuato,
Mexico, with a master's degree in administrative engineering and quality. He has more than
5 years of experience in the management and development of patents, technological
innovation projects, and the development of technological solutions through the statistical
control of processes.

He has been a teacher of statistics, entrepreneurship, and the technological development of


projects since 2011. He became an entrepreneur mentor and started a new department of
technology management and entrepreneurship at Instituto Tecnológico Superior de
Purisima del Rincon Guanajuato, Mexico.

Juan is an Alfaomega reviewer and has worked on the book Wearable Designs for Smart
Watches, Smart TVs and Android Mobile Devices.

Juan has also developed prototypes through programming and automation technologies for
the improvement of operations, which have been registered for patents.

I want to thank God for giving me wisdom and humility to review this book.

I thank Packt for giving me the opportunity to review this amazing book and to collaborate
with a group of committed people

I want to thank my beautiful wife, Brenda, our two magic princesses (Maria Regina and
Maria Renata) and our next member (Angel Tadeo), all of you, give me the strength,
happiness, and joy to start a new day. Thanks for being my family.

Nilap Shah is a lead software consultant with experience across various fields and
technologies. He is an expert in .NET, Uipath (robotics), and MongoDB. He is a certified
MongoDB developer and DBA. He is a technical writer as well as a technical speaker. He
also provides MongoDB corporate training. Currently, Nilap is working as a lead MongoDB
consultant and provides solutions with MongoDB (DBA and developer projects). His
LinkedIn profile can be found at https:/ /www.linkedin.com/in/nilap-
shah-8b6780a/ and you can reach him on WhatsApp at +91-9537047334.
www.PacktPub.com
For support files and downloads related to your book, please visit www.PacktPub.com. Did
you know that Packt offers eBook versions of every book published, with PDF and ePub
files available? You can upgrade to the eBook version at www.PacktPub.com and as a print
book customer, you are entitled to a discount on the eBook copy. Get in touch with us at
service@packtpub.com for more details. At www.PacktPub.com, you can also read a
collection of free technical articles, sign up for a range of free newsletters and receive
exclusive discounts and offers on Packt books and eBooks.

https:/​/​www.​packtpub.​com/​mapt

Get the most in-demand software skills with Mapt. Mapt gives you full access to all Packt
books and video courses, as well as industry-leading tools to help you plan your personal
development and advance your career.

Why subscribe?
Fully searchable across every book published by Packt
Copy and paste, print, and bookmark content
On demand and accessible via a web browser
Customer Feedback
Thanks for purchasing this Packt book. At Packt, quality is at the heart of our editorial
process. To help us improve, please leave us an honest review on this book's Amazon page
at https:/​/​www.​amazon.​com/​dp/​1783982608.

If you'd like to join our team of regular reviewers, you can email us at
customerreviews@packtpub.com. We award our regular reviewers with free eBooks and
videos in exchange for their valuable feedback. Help us be relentless in improving our
products!
Table of Contents
Preface 1
Chapter 1: MongoDB – A Database for the Modern Web 6
Web history 7
Web 1.0 7
Web 2.0 9
Web 3.0 11
SQL and NoSQL evolution 11
MongoDB evolution 13
Major feature set for versions 1.0 and 1.2 13
Version 2 13
Version 3 14
Version 3+ 14
MongoDB for SQL developers 16
MongoDB for NoSQL developers 17
MongoDB key characteristics and use cases 18
Key characteristics 18
What is the use case for MongoDB? 19
MongoDB criticism 21
MongoDB configuration and best practices 22
Operational best practices 23
Schema design best practices 25
Best practices for write durability 26
Best practices for replication 27
Best practices for sharding 27
Best practices for security 28
Best practices for AWS 28
Reference documentation 29
MongoDB documentation 29
Packt references 29
Further reading 30
Summary 30
Chapter 2: Schema Design and Data Modeling 31
Relational schema design 32
MongoDB schema design 32
Table of Contents

Read-write ratio 33
Data modeling 33
Data types 33
Comparing different data types 35
Date type 36
ObjectId 37
Modeling data for atomic operations 38
Write isolation 39
Read isolation and consistency 40
Modeling relationships 41
One-to-one 41
One-to-many, many-to-many 42
Modeling data for keyword searches 43
Connecting to MongoDB 45
Connecting using Ruby 45
Mongoid ODM 46
Inheritance with Mongoid models 48
Connecting using Python 49
PyMODM ODM 50
Inheritance with PyMODM models 51
Connecting using PHP 52
Doctrine ODM 53
Inheritance with Doctrine 55
Summary 56
Chapter 3: MongoDB CRUD Operations 58
CRUD using the shell 58
Scripting for the mongo shell 60
Differences between scripting for the mongo shell and using it directly 61
Batch inserts using the shell 62
Batch operations using the mongo shell 64
Administration 66
fsync 67
compact 67
currentOp/killOp 68
collMod 69
touch 70
MapReduce in the mongo shell 70
MapReduce concurrency 72
Incremental MapReduce 72
Troubleshooting MapReduce 74
Aggregation framework 76
SQL to aggregation 76
Aggregation versus MapReduce 77
Securing the shell 78

[ ii ]
Table of Contents

Authentication and authorization 78


Authorization with MongoDB 78
Security tips for MongoDB 80
Encrypting communication using TLS/SSL 80
Encrypting data 81
Limiting network exposure 81
Firewalls and VPNs 82
Auditing 82
Use secure configuration options 82
Authentication with MongoDB 83
Enterprise Edition 83
Kerberos authentication 83
LDAP authentication 84
Summary 85
Chapter 4: Advanced Querying 86
MongoDB CRUD operations 86
CRUD using the Ruby driver 86
Creating documents 87
Read 87
Chaining operations in find() 89
Nested operations 90
Update 91
Delete 92
Batch operations 92
CRUD in Mongoid 93
Read 94
Scoping queries 94
Create, update, and delete 95
CRUD using the Python driver 95
Create and delete 96
Finding documents 97
Updating documents 100
CRUD using PyMODM 100
Creating documents 101
Updating documents 101
Deleting documents 102
Querying documents 102
CRUD using the PHP driver 102
Create and delete 103
Bulk write 106
Read 107
Update 108
CRUD using Doctrine 109
Create, update, and delete 109
Read 111

[ iii ]
Table of Contents

Best practices 113


Comparison operators 113
Update operators 114
Smart querying 114
Using regular expressions 114
Query results and cursors 116
Storage considerations on delete 118
Summary 119
Chapter 5: Aggregation 120
Why aggregation? 120
Aggregation operators 121
Aggregation stage operators 122
Expression operators 123
Expression Boolean operators 123
Expression comparison operators 123
Set expression and array operators 124
Expression date operators 125
Expression string operators 126
Expression arithmetic operators 127
Aggregation accumulators 127
Conditional expressions 128
Other operators 128
Text search 128
Variable 129
Literal 129
Parsing data type 129
Limitations 129
Aggregation use case 130
Summary 142
Chapter 6: Indexing 143
Index internals 144
Index types 145
Single field indexes 145
Indexing embedded fields 147
Indexing embedded documents 147
Background indexes 148
Compound indexes 148
Sorting using compound indexes 149
Reusing compound indexes 149
Multikey indexes 150
Special types of index 154
Text 154
Hashed 155
TTL 156

[ iv ]
Table of Contents

Partial 156
Sparse 157
Unique 158
Case-insensitive 159
Geospatial 161
Building and managing indexes 163
Forcing index usage 163
Hint and sparse indexes 165
Building indexes on replica sets 165
Managing indexes 166
Naming indexes 166
Special considerations 167
Using indexes efficiently 167
Measuring performance 167
Improving performance 168
Index intersection 169
References 170
Summary 171
Chapter 7: Monitoring, Backup, and Security 172
Monitoring 172
What should we monitor? 173
Page faults 173
Resident memory 173
Virtual and mapped memory 173
Working set 174
Monitoring memory usage in WiredTiger 174
Tracking page faults 175
Tracking B-tree misses 175
I/O wait 176
Read and write queues 176
Lock percentage 176
Background flushes 176
Tracking free space 177
Monitoring replication 177
Oplog size 177
Working set calculations 178
Monitoring tools 179
Hosted tools 179
Open source tools 179
Backups 179
Backup options 180
Cloud-based solutions 180
Backups with file system snapshots 181
Taking a backup of a sharded cluster 181

[v]
Table of Contents

Backups using mongodump 182


Backups by copying raw files 183
Backups using queueing 184
EC2 backup and restore 184
Incremental backups 185
Security 186
Authentication 186
Authorization 187
User roles 190
Database administration roles 191
Cluster administration roles 191
Backup restore roles 192
Roles across all databases 192
Superuser 193
Network level security 193
Auditing security 193
Special cases 194
Overview 194
Summary 195
Chapter 8: Storage Engines 196
Pluggable storage engines 196
WiredTiger 196
Document-level locking 197
Snapshots and checkpoints 197
Journaling 198
Data compression 198
Memory usage 199
readConcern 200
WiredTiger collection-level options 201
WiredTiger performance strategies 202
WiredTiger B-tree versus LSM indexes 203
Encrypted 203
In-memory 205
MMAPv1 206
MMAPv1 storage optimization 207
Mixed usage 208
Other storage engines 209
RocksDB 209
TokuMX 210
Locking in MongoDB 210
Lock reporting 213
Lock yield 213
Commonly used commands and locks 214

[ vi ]
Table of Contents

Commands requiring a database lock 214


References 216
Summary 217
Chapter 9: Harnessing Big Data with MongoDB 218
What is big data? 218
Big data landscape 219
Message queuing systems 220
Apache ActiveMQ 221
RabbitMQ 221
Apache Kafka 222
Data warehousing 223
Apache Hadoop 223
Apache Spark 224
Spark comparison with Hadoop MapReduce 225
MongoDB as a data warehouse 226
Big data use case 227
Kafka setup 228
Hadoop setup 232
Steps 232
Hadoop to MongoDB pipeline 235
Spark to MongoDB 235
References 236
Summary 237
Chapter 10: Replication 238
Replication 238
Logical or physical replication 239
Different high availability types 239
Architectural overview 240
How do elections work? 242
What is the use case for a replica set? 244
Setting up a replica set 245
Converting a standalone server to a replica set 246
Creating a replica set 246
Read preference 248
Write concern 250
Custom write concern 251
Priority settings for replica set members 252
Priority zero replica set members 253
Hidden replica set members 253
Delayed replica set members 254

[ vii ]
Table of Contents

Production considerations 255


Connecting to a replica set 255
Replica set administration 258
How to perform maintenance on replica sets 258
Resyncing a member of a replica set 259
Changing the oplog size 260
Reconfiguring a replica set when we have lost the majority of our
servers 261
Chained replication 262
Cloud options for a replica set 262
mLab 263
MongoDB Atlas 263
Replica set limitations 264
Summary 264
Chapter 11: Sharding 265
Advantages of sharding 265
Architectural overview 268
Development, continuous deployment, and staging environments 269
Planning ahead on sharding 269
Sharding setup 270
Choosing the shard key 270
Changing the shard key 270
Choosing the correct shard key 272
Range-based sharding 273
Hash-based sharding 273
Coming up with our own key 274
Location-based data 274
Sharding administration and monitoring 275
Balancing data – how to track and keep our data balanced 275
Chunk administration 280
Moving chunks 280
Changing the default chunk size 281
Jumbo chunks 281
Merging chunks 284
Adding and removing shards 285
Sharding limitations 287
Querying sharded data 289
The query router 289
Find 290
Sort/limit/skip 290
Update/remove 291

[ viii ]
Table of Contents

Querying using Ruby 292


Performance comparison with replica sets 292
Sharding recovery 293
Mongos 293
Mongod process 293
Config server 294
A shard goes down 294
The entire cluster goes down 294
References 295
Summary 295
Chapter 12: Fault Tolerance and High Availability 296
Application design 296
Schema-less doesn't mean schema design-less 297
Read performance optimization 297
Consolidating read querying 297
Defensive coding 299
Monitoring integrations 301
Operations 302
Security 303
Enabling security by default 303
Isolating our servers 304
Checklists 305
References 307
Summary 307
Index 308

[ ix ]
Preface
MongoDB has grown to become the de facto NoSQL database with millions of users, from
small start-ups to Fortune 500 companies. Addressing the limitations of SQL schema-based
databases, MongoDB pioneered a shift of focus for DevOps and offered sharding and
replication maintainable by DevOps teams. This book is based on MongoDB 3.x and covers
topics ranging from database querying using the shell, built-in drivers, and popular ODM
mappers, to more advanced topics such as sharding, high availability, and integration with
big data sources.

You will get an overview of MongoDB and how to play to its strengths, with relevant use
cases. After that, you will learn how to query MongoDB effectively and make use of indexes
as much as possible. The next part deals with the administration of MongoDB installations
on-premise or on the cloud. We deal with database internals in the next section, explaining
storage systems and how they can affect performance. The last section of this book deals
with replication and MongoDB scaling, along with integration with heterogeneous data
sources. By the end this book, you will be equipped with all the required industry skills and
knowledge to become a certified MongoDB developer and administrator.

What this book covers


Chapter 1, MongoDB – A Database for the Modern Web, takes us on a journey through web,
SQL, and NoSQL technologies from inception to current state.

Chapter 2, Schema Design and Data Modeling, teaches schema design for relational databases
and MongoDB, and how we can achieve the same goal starting from a different point.

Chapter 3, MongoDB CRUD Operations, gives a bird's-eye view of CRUD operations.

Chapter 4, Advanced Querying, covers advanced querying concepts using Ruby, Python,
and PHP, using both the official drivers and an ODM.

Chapter 5, Aggregation, dives deep into the aggregation framework. We also discuss why
and when we should use aggregation, as opposed to MapReduce and querying the
database.

Chapter 6, Indexing, explores one of the most important properties of every database, which
is indexing.
Preface

Chapter 7, Monitoring, Backup, and Security, discusses the operational aspects of MongoDB.
Monitoring, backup, and security should not be an afterthought but rather a necessary
process before deploying MongoDB in a production environment.

Chapter 8, Storage Engines, teaches about different storage engines in MongoDB. We


identify the pros and cons of each one and the use cases for choosing each storage engine.

Chapter 9, Harnessing Big Data with MongoDB, shows more about how MongoDB fits into
the wider big data landscape and ecosystem.

Chapter 10, Replication, discusses replica sets and how to administer them. Starting from an
architectural overview of replica sets and replica set internals around elections, we
dive deep into setting up and configuring a replica set.

Chapter 11, Sharding, explores sharding, one of the most interesting features of MongoDB.
We start from an architectural overview of sharding and move on to how we can design a
shard, and especially choose the right shard key.

Chapter 12, Fault Tolerance and High Availability, tries to fit in the information that we didn't
manage to discuss in the previous chapters, and places emphasis on some others.

What you need for this book


You will need the following software to be able to smoothly sail through the chapters:

MongoDB version 3+
Apache Kafka 1
Apache Spark 2+
Apache Hadoop 2+

Who this book is for


Mastering MongoDB 3.x is a book for database developers, architects, and administrators
who want to learn how to use MongoDB more effectively and productively.
If you have experience in, and are interested in working with, NoSQL databases to build
apps and websites, then this book is for you.

[2]
Preface

Conventions
In this book, you will find a number of text styles that distinguish between different kinds
of information. Here are some examples of these styles and an explanation of their meaning.

Code words in text, database table names, folder names, filenames, file extensions,
pathnames, dummy URLs, user input, and Twitter handles are shown as follows: "In a
sharded environment, each mongod applies its own locks, thus greatly improving
concurrency."

When we wish to draw your attention to a particular part of a code block, the relevant lines
or items are set in bold:
> db.types.find().sort({a:-1})
{ "_id" : ObjectId("5908d59d55454e2de6519c4a"), "a" : [ 2, 5 ] }
{ "_id" : ObjectId("5908d58455454e2de6519c49"), "a" : [ 1, 2, 3 ] }

Any command-line input or output is written as follows:


> db.types.insert({"a":4})
WriteResult({ "nInserted" : 1 })

New terms and important words are shown in bold.

Warnings or important notes appear like this.

Tips and tricks appear like this.

Reader feedback
Feedback from our readers is always welcome. Let us know what you think about this
book-what you liked or disliked. Reader feedback is important for us as it helps us develop
titles that you will really get the most out of. To send us general feedback, simply email
feedback@packtpub.com, and mention the book's title in the subject of your message. If
there is a topic that you have expertise in and you are interested in either writing or
contributing to a book, see our author guide at www.packtpub.com/authors.

[3]
Preface

Customer support
Now that you are the proud owner of a Packt book, we have a number of things to help you
to get the most from your purchase.

Downloading the example code


You can download the example code files for this book from your account at http:/​/​www.
packtpub.​com. If you purchased this book elsewhere, you can visit http:/​/​www.​packtpub.
com/​support and register to have the files emailed directly to you. You can download the
code files by following these steps:

1. Log in or register to our website using your email address and password.
2. Hover the mouse pointer on the SUPPORT tab at the top.
3. Click on Code Downloads & Errata.
4. Enter the name of the book in the Search box.
5. Select the book for which you're looking to download the code files.
6. Choose from the drop-down menu where you purchased this book from.
7. Click on Code Download.

Once the file is downloaded, please make sure that you unzip or extract the folder using the
latest version of:

WinRAR / 7-Zip for Windows


Zipeg / iZip / UnRarX for Mac
7-Zip / PeaZip for Linux

The code bundle for the book is also hosted on GitHub at https:/​/​github.​com/
PacktPublishing/​Mastering-​MongoDB-​3x and https:/​/​github.​com/​agiamas/​mastering-
mongodb. We also have other code bundles from our rich catalog of books and videos
available at https:/​/​github.​com/​PacktPublishing/​. Check them out!

[4]
Another Random Scribd Document
with Unrelated Content
CHAPTER XXII
The Countess and Violet

Miss Forster's bedroom door was gently opened, and the


Countess of Cantyre went softly in. She closed the door as gently as
she had opened it, and, remaining motionless, looked inquiringly
about her. All was still. The curtains had not yet been drawn. In the
apartment, despite its size, was the stuffy smell which comes to a
bedroom when the windows have not been opened through the
night. Her ladyship, crossing the room, drew the curtains and threw
the windows wide open. It was a lovely day; the clean, fresh air
came pouring in. The room looked on to the park, over a waving
expanse of green which stretched as far as the eye could reach. She
stood for a moment to enjoy the glory of the morning.

"That's better," she said out loud. Then she turned to the bed.

Miss Forster's form was dimly outlined beneath the clothes. She
had not moved when her visitor entered, or even when the windows
were thrown open. She was either sleeping very soundly or she
refused to allow herself to notice what was going on.

The countess, going to the side of the bed towards which her face
was turned, stood waiting for her to show some signs of life.
Presently there was a slight movement beneath the clothes, and a
faint voice inquired:

"Who's that?"

"You know very well who it is."


"Margaret, is that you?"

"You know very well it's me. Who but me would take the liberty of
coming into your room, drawing the curtains and opening the
windows and letting in the air? If you only knew what an
atmosphere you've been living in! Do you always sleep with your
windows closed?"

The only answer was a sound which might have meant anything,
followed by a movement beneath the clothes.

"How's the foot?"

"It seems better." The words were whispered rather than spoken.

"How are you?"

"I'm all right."

"You don't sound as if you were all right. What's become of your
voice? And, if you are all right, what are you doing in bed at this
hour of the day?"

"I was just going to get up."

"Were you? That's good news. There were no immediate signs of


it that I could see. Vi, you and I are going yachting."

"Going what?"

"Yachting. I said yachting. Do you want me to shout? We are


leaving here to-day; we are starting on the Sea Bird to-morrow for
wherever Captain Slocock likes to take us; you and I alone together."

"Are we?"

"Yes, we are. Is that the dying-duck-in-a-thunderstorm sort of


fashion in which you take my surprising piece of information? Move
some of those bedclothes and let me see your face, or, if you won't,
I will."

Her ladyship did. It was a white, wan face which looked out at her
from between the sheets, so white and so wan that her ladyship was
quite startled.

"Vi, what do you mean by telling me you're all right? You look like
a ghost."

"I wish I were."

"What does the child mean! Whatever for?"

"If I were a ghost I should be dead."

"I see, that's it; and a good, sound, healthy idea, especially for a
young woman who is scarcely more than a child."

Her ladyship, drawing forward a big arm-chair, placed herself, not


on the seat, but on the back; her feet she placed on the seat. She
was such a small person that if she had occupied the position which
people usually do upon a chair, Violet, on her high spring mattress,
would have been above the level of her head, and she, for the
purpose she had in view, at a disadvantage. Balanced on the top of
the back of the chair, she was at least on a level with the girl in the
bed.

"Vi, I am going to talk to you. I wish I'd been made a foot longer;
then I shouldn't be forced to take positions on furniture which
people were never meant to take. You're going to tell me all about it.
You and I have had our share of troubles in our time, and we've
always made a clean breast of them to each other. Now start
confessing to me."

"It's easy for you to talk."


"Of course it is; and it will be easy for you when you've once got
going."

"You don't understand."

"Oh, yes, I do. Sydney Beaton was here last night."

"Margaret! How do you know?" The girl threw the bedclothes off
for herself, starting up from her pillow. "Has that wretch told you?"

Her ladyship regarded the girl attentively; then shook her dainty
head.

"No one has told me anything. I just guessed, though perhaps


you've told me as much as you very well could."

"I told you? What do you mean?"

"My dear Vi, consider. Could your conduct have been more
suggestive? Don't I know you? Aren't I aware that you're the coolest,
calmest, most levelheaded of young women? Do you suppose that
you acted up to that character last night? My dear Vi, something was
wrong with you, so wrong that it had turned the girl I knew into one
I didn't. What could it be? We know all about each other that there
is to know, so that I knew that there was only one thing which could
have on you such a dire effect. How did you know that leather bag
was in that chest? Mind you, I'm not asking a question; I'm not
trying to force your confidence; I'm only putting it to you if it isn't
obvious that there was only one conclusion I could draw?"

The girl was sitting up in bed, white-faced, wild-eyed.

"Then, now you know why I wished that I was a ghost."

Again her ladyship observed her closely, her head a little on one
side.
"Aren't you--doesn't it occur to you as being just barely possible
that you're a goose?"

"Why am I a goose?"

"May I speak?"

"I can't stop you. You've evidently come here for that express
purpose."

"I know you will misunderstand me, and fly at me, and scratch
me, and do all sorts of pretty things."

Her ladyship sighed; her tone breathed resignation.

"You needn't be afraid."

"I'm not; only--Vi, if you only knew how sorry I am for you."

"I don't want your sorrow."

"Vi, I am afraid that your Sydney Beaton is a bad lot."

"Don't you dare to say it--you!"

"You can't believe that he isn't."

"I can, and I do."

"Was he Jane Simmons's catspaw, or was Jane Simmons his? I


presume they were confederates. Only that could explain the little
talk you had with her."

The girl clenched her fists; she drew a great breath.

"Margaret, I want to tell you just how it is with me."

"Tell on."
"I'd give--I'd jump at the chance of marrying him to-morrow."

"I'll do you the justice to say that I don't believe you. Even if
you're a lunatic, you can't be absolutely raving."

"Let me explain."

"With pleasure. Your remark will need all the explanation you can
lay your hands on."

"Do you know what it is--to love a man?"

"I'm rather fond of mine."

"Fond!" Nothing could have exceeded the scorn which the girl's
manner was meant to convey. "Do you know what it is for your love
for a man to have become so part and parcel of your being that life
means nothing without him?"

"I'm glad to say I don't."

"Then, I do. So that, you see, is where we differ."

"Poor Vi!"

"Don't talk nonsense, Margaret; there's no poverty in such a state


as mine. I'm far richer than you, because I have the only thing
which life has to offer worth having. Don't speak; let me continue.
You've read the fairy tale in which the heroine gets the gift of sight--
it's an allegory. She meets one person in whose nature there is
nothing hidden from her; she can see into his very heart. Now start
laughing: I can see into Sydney Beaton's very heart."

"My dear, I'm very far from laughing. You're not the only girl who
has thought she had that gift where a particular man was
concerned. What would the police have said if they had caught the
gentleman you name in the very act? You know, they don't consider
motives, or peer into hearts; they only deal with facts."

"You don't understand."

"Well, make me."

"Aren't I trying to? But you will keep interrupting. Sydney has
never been exactly wise----"

"So you've told me."

The girl took no heed of the interruption; she only glared.

"But I will answer for his standard of honour, and honesty, as I


would for my own."

"I wouldn't."

"That's because you don't know him, as I do. They lied when they
said he cheated. I spoke to some of them last night. Mr. Tickell, who
was playing against him, admitted that he knew nothing about it,
that he saw no wrong in anything that Sydney did, nothing in the
least suspicious in his behaviour. Captain Draycott as good as owned
that, in supporting Anthony Dodwell's accusation, he might have
been in error; I could see for myself that that consciousness was
weighing on his mind. Major Reith tells me that it was all done in the
hurry and whirl of a few mad moments. They talked it over after
Sydney had gone; they were all agreed that they would have liked to
have him back, to have questioned him when he was cooler and
they also. I haven't seen Colonel Sandys, who, you know, was in
command of the regiment. I haven't had a chance. He's been abroad
ever since. But I've been given to understand that, although he
wasn't present, he expressed himself on the matter in terms which
were unflattering to all concerned; and I've a suspicion that his
feeling on the subject had something to do with his retiring. Anthony
Dodwell has not become more popular since; I believe, that if the
mess was polled, they'd exchange him for Sydney to-morrow."

"Not after last night, my dear."

"I'm coming to that. Until now I've not felt that it became me to
interfere. I felt that Sydney might resent my interfering; that he
would prefer to take the matter up in his own way, at his own time.
But after last night I see how mistaken I may have been. Margaret,
if you were a man of honour, consider what your feelings would be if
those whom you had esteemed your friends treated you as those
men did Sydney."

"It's not easy for me to put myself into such a position; but if I
had been in his place, and been innocent, I think I should have
recognised the danger of my position, have kept calm, and have had
the matter thrashed right out."

"My dear Margaret, you don't seem to realise that all these men
were half beside themselves. I can quite fancy what men can be in
such a moment. Sydney wanted to fly at Dodwell's throat. I'm sure
that I can't blame him; I should have wanted to do the same,
wouldn't you?"

"Well, that depends. I can't say that the little I have known of
Captain Dodwell has moved me to affection. But, that apart, how do
you explain last night?"

"Don't I tell you that I'm coming to that? Margaret, have patience.
Sydney left the barracks that night with, it is nearly certain, very
little money, and half mad with rage and shame and grief. Then the
curtain falls; we know nothing of what happened to him afterwards.
But, in the light of last night, can't you imagine?"

"That's the pity of it--I can."


"Yes; but from one point of view only. Can't you conceive of there
being another? Can't you imagine what he may have suffered in
what, to him, was a new and hideous world--hopeless, helpless,
friendless, penniless, alone? I can't think of any way in which Sydney
could have earned a farthing, circumstanced as he was. When his
money was gone, which probably lasted only a very little time, he
perhaps went hungry. Oh, you don't believe that men do go hungry!
My dear, since Sydney went, I've seen crowds of men, in London
streets and parks and public places, who, I am convinced, go hungry
nearly all the time. Margaret--again I give you permission to laugh--
as I've been lying here between the sheets I've seen Sydney
starving in rags. I'm sure it has been like that. When a man of his
position gets down to that, what is there for him to do?"

"That sort of thing would be pretty rough on him, I grant. But,


you know, Vi, you're taking a very great deal for granted."

"I've admitted that Sydney was never the wisest or the strongest
of men. It is quite possible that in those depths he met those who
were even more desperate than himself, who pointed out to him a
way of at least getting something to eat. There's something about
that woman Simmons which convinces me that she has known
something of the sort of thing of which I speak."

"Do you mean that she has known what it is to starve?"

"I shouldn't wonder. There was something about her when she
came into this room last night which struck me. When I was talking
to her this morning in the hall I saw what it was; it kept peeping out.
Margaret, that woman has stood at despair's very gate; she has
never forgotten it, and never will. It's taken from her something
which you and I have, but which she will never have again; she is
not a woman in the sense we are. Although she may not know it,
she is as some wild creature which has its back against the wall, and
which fights, straining every nerve and every faculty it has, against
what must prevail."
The countess was regarding her with her eyes wide open.

"I always have credited you with imagination, but I certainly


never guessed that it amounted to this. I must take a look at
Simmons myself, and see what my imagination does for me. I don't
want to be beaten in a game of that kind."

"I told you you could laugh, and so you can. If I had had my wits
about me, I should have stopped Sydney last night; I should have
stuck to him tight; I should have made him understand that,
whether he would or wouldn't, I would stay by his side, lest worse
befell him. I am going to do that now; I am going to leave no stone
unturned to find him. When I have found him I'll not lose sight of
him again. He has not been very wise; but the world has used him
ill. I will stand by his side against the world."

"My dear, you talk as I've always fancied young women talk in
plays I've never seen, the sort of plays which I have been given to
understand were popular at the Adelphi once upon a time. It may be
very beautiful, but it's frightfully silly. Suppose it gets generally
known--and these things do get out--that the gentleman in question
committed what was really an act of burglary last night, do you
imagine that even the most catholic-minded people will want to
cultivate his acquaintance, even with you at his side? And, Vi, you
know there may be worse than burglary."

"What do you mean by that?"

"Hasn't it occurred to you as just possible that he may have had


something to do with what happened to Captain Draycott, who, by
the way, is still nowhere to be found? Rupert tries to pretend that he
thinks everything is all right, but I can see that he is oppressed by a
feeling that he is lying at the bottom of the lake."

"I'm not going to talk to you, Margaret; I can see that it's no use.
I'm sure that if Sydney had anything to do with Captain Draycott,
that gentleman brought it on himself."
"My dear girl! But will the police think that?"

"Margaret, I'm going to get up. It's no use our continuing the
discussion. We not only look out of two different pairs of eyes; we
look on two entirely different worlds. In yours it's roses, roses all the
way; in mine it's thorns, thorns, thorns. Are you going, or must I
dress while you're here?"

The girl, slipping out of the bed, stood before her in her night
attire.

"My dear, you often have, but I'll go if you'd rather. Shall I send
your maid?"

"Send no one. I'll dress myself; I will do all things for myself in
future. And, while you're here, I'll say good-bye. While I've been
lying there I've been planning what to do to find Sydney. We're not
to see much of each other while I'm doing that, and when I've found
him we're likely to see still less. As you put it, he and I are not the
sort of persons with whom you and your friends might care to claim
acquaintance."

"Then you won't come yachting?"

"Thank you, I will not."

"Vi, don't be a pig! I'm on your side."

"I doubt it, nor, under the circumstances, do I see how you could
be."

"But I am, you idiot! I've something of the sort of feeling for you
which it seems you have for him, and though I've no doubt whatever
that you're more foolish than a goose--because a goose is quite a
wise bird--all the same, I'm going to stick as close to you as you talk
of sticking to him. So perhaps, before I quit this room, you'll promise
that you won't leave the house till you've had another talk with me."
"What will be the use of that?"

"Never mind; you promise."

"Oh, I'll promise; but I shall leave the house this morning all the
same."

"You can, and my prayers will go with you; but you're not going in
your present frame of mind towards me--that I tell you straight.
You've had no breakfast, and it's lunch time. When you're dressed,
suppose you come to my room and have something with me; I'll see
that we're alone."

"If you like, I'll come, but it will be on the understanding that you
will not even try to persuade me not to do what I am going to do."

"I won't try to persuade or dissuade you--only you come."

When the countess was again in the pretty sitting-room which she
called her very own she took a sheet of paper from between the
buttons of her blouse: it was the sheet of paper which had been
contained in the envelope which had been presented to the earl by
the bronze figure on the pedestal. The little lady read it carefully
through; then she struck a match, and lit it at the corner, holding it
in her fingers while it flamed, and she asked herself:

"I wonder who wrote it--could it have been Jane Simmons?"

When the paper had been utterly consumed, dropping the ash on
to the floor, she pressed it into the carpet with her shoe, so that
none of it remained. Then she rang the bell. To the man who
answered it she said:

"There's a maid in the house named Simmons--Jane Simmons.


Tell them to send her to me here at once."
Some minutes elapsed, during which the countess, taking her
ease on a couch covered with pink satin, opened, one after the
other, a number of envelopes which were in a tray upon a table. For
the most part just glancing at their enclosures, she dropped them
from her on to the floor, and was still engaged in doing this when
the man returned.

"It appears, my lady, that Simmons has left the house."

"Indeed?" The countess just glanced up from still another


enclosure she was dropping to put the question; no one would have
supposed she was interested in the least.

"Yes, my lady. She was missed some time ago. Mrs. Ellis sent to
her room, and it was found she was gone. It seems that one of the
gardeners saw her walking towards the lake with a bag in her hand."

"Is that so? Tell them to serve lunch in my room--lunch for two--
in, say, half an hour."

The man went. The lady continued to treat her correspondence


with the same scant courtesy.

"So she has gone. I thought it would be found that she had gone.
She was seen walking towards the lake, with a bag. I wonder why
the lake, and what was in the bag. Poor Vi!"
CHAPTER XXIII
The Latest Story

Days became weeks, and the mystery of what had become of


Noel Draycott was a mystery still. It had got into the papers; to the
disgust of the Earl of Cantyre, it had become, in a sense, the topic of
the hour. "Where is Noel Draycott?" was the question, set in staring
capitals, which faced newspaper readers day after day. The usual
things were said about the incapacity of Scotland Yard; and people
were assured by the morning and evening Press that the whole affair
was but another illustration of how ineffective our detective service
really is.

The official methods of dealing with his house and grounds were
bad enough, but when it came to the amateur detective, his lordship
drew the line. It was a subject on which he expressed himself very
freely.

"Think the professional is no good, do they? I can't say that I'm


struck with him myself. But compared to these male and female
creatures who are aping him----! There's a woman who has taken on
the job of what she calls 'solving' the mystery for the Daily
Screecher; they tell me they've had the greatest difficulty in keeping
her out of the servants' hall, to say nothing of the butler's pantry;
and the other day they found her under the dining-room table just
as they were starting to lay the dinner. I've given instructions that all
such persons are to be warned gently off the premises, and kept off.
Of course, if any of them should stray by any unhappy accident into
the lake, it will be a misfortune. Privacy is getting a thing of the past.
From the tone some of these fellows take, you'd think it was their
house, their grounds--not mine."

Miss Forster had gone her own way--her uncle and many of her
friends put it, her own bad way. She had gone straight from
Avonham to Nuthurst, her uncle's house, which had been her home
for so many years. In an interview she had insisted on having with
him a very few minutes after her arrival, she had given her uncle
one of the surprises of his life.

"You wish me to marry Sir George Beaton?" she had informed


him.

"I'm not particular about your marrying George Beaton," the


distracted old man declared. "There are hundreds and thousands of
men in the world besides. What's the matter with Harold Reith? I
thought you liked him."

"I like him too much to marry him."

"Of course, there's that point of view. I said to him: 'If the girl
does marry you, you'll want to drown her and yourself inside six
weeks.' Well, that didn't seem to cheer him."

Miss Forster looked at the old gentleman with doubtful glance, as


if she suspected him of malign intention.

"Such a remark on your part was quite unnecessary. Major Reith


is not likely to find himself in such a situation. I am going to marry
Sydney Beaton."

Had she actually dropped a live bomb at his feet, Mr. Hovenden
could not have seemed more disturbed.

"That pestilent young scoundrel! Was there ever anything like a


woman for sheer impossibility?"
"It is because I am conscious of what your sentiments are on the
subject that I am going to leave Nuthurst."

"You're going to do--what?"

"I have an income of my own----"

"Five hundred a year."

"It's more than five hundred a year."

"How much more?"

"I'm going to take a small furnished flat in London, and I'm going
to live in it. For that my income will be more than ample."

"Is the girl raving? What's the matter with my house--or with me?
If it comes to that, can't I take a flat for you?"

She crossed the room, and she kissed him. Educated in the school
of experience, he did not show himself so grateful as he might have
done.

"What does that mean?"

"It means, my dear uncle, that it can't be done."

"What can't be done?"

"I'd better be candid with you."

"I'd sooner you weren't. Candour with you means saying


something disagreeable."

"Circumstances have arisen which make me think that things are


in a very bad way with Sydney."

"I shouldn't be surprised."


"You would be surprised if you knew how bad they are."

"Oh, no, I shouldn't. A young scamp like that must expect to feed
on the husks which the swine have rejected. I know. Rogues
sometimes do get punished even in this world."

"Does it not occur to you how impossible it is that I should remain


in your house while you speak like that of my future husband?"

"Your future husband?"

"My future husband." She said it with an air of calmness which


irritated the old gentleman more than any show of heat would have
done.

"Violet, if ever you marry that young blackguard----"

"Stop, uncle, before you say something which I may find it hard
to forgive." She spoke as if she wished him to understand that the
discussion was closed; that all she had to do was to make an
announcement. "I am leaving Nuthurst this afternoon; I am going up
to town by the three-twenty-three. I have told Cleaver to send my
things on after me and what things to send. I shan't want her. You
may dismiss her or keep her on, as you please. I dare say she may
be found useful in the house."

"Dismiss Cleaver! At a moment's notice! I catch myself at it. And


she has waited upon you hand and foot since you wore your first
pair of long stockings!"

As Geoffrey Hovenden growled the words out he surveyed her as


a clean-bred old mastiff might an impertinent young lap-dog. She
went calmly on, holding out to him a sheet of paper:

"My address in town will be 2A Cobden Mansions, York Place. I've


written it on this piece of paper in case you should forget it. It is
quite respectable; you need be under no apprehension. All the
occupants of Cobden Mansions are women, who have to supply
satisfactory references before they are accepted as tenants. Good-
bye."

Ignoring the hand which she advanced, he glared at her as if he


would like to treat her to a good shaking.

"Are you in earnest?"

"I am. I know, uncle, how much I have to thank you for; please
don't think I'm ungrateful because I am leaving Nuthurst. If I had
married any of those hundred thousand gentlemen you just spoke
of, I should have had to leave your house for his, so it comes to the
same thing, because I hope that my husband will soon have a home
for me. I don't suppose we shall see much of each other in future----
"

"Don't talk balderdash! I'm disappointed in you, Violet,


disappointed."

"I'm sorry, uncle; but I shan't cease to love you, and I hope you
won't cease to love me."

"Why should I? Though your whole conduct shows you don't care
a snap of your fingers for me. I don't believe you're really quite right
in your head; I've half a mind to have you certified as a lunatic."

"You might find that harder than you suppose. But don't let us
talk about that. You'll think better of me when I've gone. If you
won't shake hands, once more good-bye. Remember, 2A Cobden
Mansions. I shall be always glad to have a visit from you."

She was gone from the room, and very shortly afterwards from
the house. His inclination was to stop her by strong measures, but
second thoughts prevailed. He chose what he flattered himself was
the wisdom of the serpent.
"If I let her think that it is a matter of complete indifference to me
whether she goes or stays, she'll soon be back again. When a
woman thinks that you don't care if she does make a fool of herself,
she'll soon give up trying. I never thought that the girl would be
such an imbecile."

When, a few days later, Sir George Beaton called, and placed him
in possession of certain information, he formed a still lower estimate
of his niece's mental capacity. The young man burst in on the old
one just as he had finished his usual daily interview with his
steward.

"Hovenden," he began, without any preliminary greeting, "what's


this idea about Violet having left Nuthurst and gone to live in town?"

The old gentleman looked up from a bundle of papers which the


steward had left behind.

"I don't know what you hear, but she's gone." His glance returned
to the papers. "So far as I can understand, she's gone to look for
your brother Sydney."

Sir George displayed signs of acute perturbation.

"Good heavens! Do you know what's the latest tale they're


telling?"

"How should I? How long is it since I saw you? The worst tales
about your brother I've always heard from you."

"Is that meant for---- What do you mean by that?"

"It's the truth, any way. Ever since Sydney was a small boy you've
been telling tales to his discredit."

"Have I? I'm going to cap them with another: he's been


committing burglary--that's his latest performance."
"Tell that to the marines. You know, George, you overdo it where
Sydney is concerned; you make of him 'an 'orrible tale'; the colours
with which you paint him are invariably sanguinary."

Sir George Beaton punctuated his words by striking his hand on


the table at which the old gentleman was sitting.

"On the night of the Easter ball at Avonham all the women's
jewellery was taken from their rooms--by Sydney."

"Who told you that?"

"Never mind who told me; it's a fact. It's the topic among the
people we know."

"He did it for a lark; he has a peculiar sense of humour."

"That's how you look at it; you may well call it peculiar. There's
something else which is being said of him, still more peculiar."

"He has committed murder?"

"That's what's being said."

"George, do you know you're talking of your own brother?"

"Don't I know it? You've seen in the papers about this Noel
Draycott who is missing; he's one of the men who accused him that
night at poker. They say that after Sydney had made off with the
women's jewels he came across Draycott, there was a row, and he
killed him. And this is the man Violet has gone to London to look for!
She's not the only person who is doing it. And I'll say this--I hope
that neither she nor anyone else will find him. I don't want to have
my name entered in the Newgate Calendar, nor to see my brother
finish at the gallows."
"Is it possible, do you think, that Violet can know of this--of these
charges which are alleged against him?"

"I'm told it's because she knows that she's gone to town. She's
got some cranky notion in her head that this is a case in which, for
love's sake, the world would be well lost. To associate love with a
man like that!"
CHAPTER XXIV
2A Cobden Mansions

It was hard to see what Violet Forster had gained by her change
of residence, even from her own point of view; she felt that herself.
She was conscious that Cobden Mansions was not Nuthurst, and that
her particular corner in that tall, ugly, red brick building left a deal to
be desired. And so far as she could see, she had done no good by
coming; she had learnt absolutely nothing of Sydney Beaton's
whereabouts; she could not have learnt less had she chosen to stray
in the woods at Nuthurst instead of the highways and by-ways of
London.

She had never got over the difficulty which had beset her at the
first, that she had not been able to decide which was the best way
to carry on her search. She had always the one dreadful fact to
remember, that she was not the only person who wanted to get
within touch of Sydney. If she was not careful she might do him the
worst possible turn, by placing him in the hands of his enemies.
That, in the sense in which she used the word, he was an innocent
man she had no doubt whatever; but whether that sense was one
which would commend itself to the authorities was the problem
which caused her many a sleepless night, which took the roses out
of her cheeks, the light from her eyes, the spring from her steps;
which had transformed the blooming, light-hearted, high-spirited
maiden into a nervous, shrinking, white-faced woman. She who had
never known what it was to have an hour's illness, had suddenly
become the victim of headaches which would not go. Such
headaches! It seemed as if some terrible weight were pressing on
her brain, making it difficult even for her to open her eyes. Major
Reith caught her one day while she was in the grip of one of the
very worst of them. Coming unannounced into her little sitting-room,
he found her lying face downwards on the couch. Starting up,
turning towards him her pallid face, they regarded each other with
mutual discomfiture.

He spoke first: "I beg your pardon, but--I did knock."

Assuming a more orthodox position, she conjured up--it seemed


with difficulty--a faint, wan smile.

"I'm not surprised. It's I who should apologise; this absurd head
of mine makes me feel so stupid that anyone might knock half a
dozen times without my knowing it."

Her appearance startled him; to him she seemed genuinely ill; the
change which had taken place in her hurt him more than he would
have cared to say. He was so unwilling that she should see the
concern on his face that he turned his face from her under the
pretence of putting his hat upon a chair.

"Have you seen a doctor?"

"What's the use? Medicine won't cure me, at least the sort of stuff
a doctor would prescribe."

"Suppose you get really bowled over, what then?" She did not
answer; she shut her eyes and sat still. "Do you know you are
beginning to strike me as an extremely obstinate person?"

"Are you only just beginning to find that out?"

"You'll be a case for the hospital before very long, and then what
good will you have done, for yourself, for anyone?"
"That's a question which I put to myself--so often. Please don't
bully me. You never have seen me cry, have you? But I shall cry if
you do; and I feel that if I once start I shall never stop. Have you
any news? That's the medicine I want, and a doctor who will give it
me."

"I'm more than half disposed to telegraph to someone who'd pack


you off to the sea; you'll brood yourself ill."

"The sea won't do me any good; I've told you the only medicine
which will. Have you any?"

"News? Of a sort. The regiment is all at sixes and sevens; in the


whole of its history there's never been such a state of things
before."

"What's wrong now with your precious regiment?"

"Everything. There's a bad spirit abroad in the mess; there's


continual friction, the fellows are all at loggerheads, there's
something that jars."

"So there ought to be, amongst such a set of individuals as


constitute your mess."

"I've something to tell which you may regard as some of that


medicine you are looking for."

"Have you? That's good; what is it?"

"It depends upon the point of view whether it's good or whether
it's bad; from one point of view it's uncommonly bad."

"I hope that's not mine."

"I dare say it won't be. You know that throughout I've declined to
express a positive opinion about that poker business of Beaton's."
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

ebookfinal.com

You might also like