[SERVER-27002] Double counting of uassert when non-ssl connection attempted on sslMode required Created: 11/Nov/16  Updated: 08/May/18  Resolved: 03/May/18

Status: Closed
Project: Core Server
Component/s: Logging, Networking
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Minor - P4
Reporter: Daniel Pasette (Inactive) Assignee: Mira Carey
Resolution: Done Votes: 0
Labels: dogfooding
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Operating System: ALL
Participants:

 Description   

2016-11-11T17:32:35.818+0000 D -        [conn9847] User Assertion: 17189:The server is configured to only allow SSL connections src/mongo/util/net/message_port.cpp 137
2016-11-11T17:32:35.818+0000 D -        [conn9847] User Assertion: 17189:The server is configured to only allow SSL connections src/mongo/db/service_entry_point_mongod.cpp 128
2016-11-11T17:32:35.818+0000 I -        [conn9847] AssertionException handling request, closing client connection: 17189 The server is configured to only allow SSL connections
2016-11-11T17:32:35.818+0000 I -        [conn9847] end connection 10.200.10.52:49756 (192 connections now open)



 Comments   
Comment by Mira Carey [ 03/May/18 ]

This is gone away as of 3.6 (gone for both transport layer asio as well as legacy).

Comment by Daniel Pasette (Inactive) [ 13/Nov/16 ]

this is a minor issue. it would be better to not register two uasserts for the same error during one operation in general, but the cost does not seem to outweigh the benefit.

Comment by Mira Carey [ 11/Nov/16 ]

pasette,

These log lines come out this way because we:

  1. uassert in the old networking code (message port)
  2. catch high up the stack by the main loop for mongod
  3. convert to status
  4. uassert the status

So this isn't indicative of any bugs in the code.

Are we hoping for a pervasive fix, or just not double logging in this particular case? A pervasive solution is going to be somewhat complicated (do we want to avoid uasserting the same message twice? Or more than once per client operation?). The specific case is a bit easier, but hacky (we can check the status code at the second uassert location and throw instead of uasserting if it has that code)

Generated at Thu Feb 08 04:13:53 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.