// Copyright (c) 2011-present, Facebook, Inc. All rights reserved.
-// This source code is licensed under the BSD-style license found in the
-// LICENSE file in the root directory of this source tree. An additional grant
-// of patent rights can be found in the PATENTS file in the same directory.
+// This source code is licensed under both the GPLv2 (found in the
+// COPYING file in the root directory) and Apache 2.0 License
+// (found in the LICENSE.Apache file in the root directory).
//
// Copyright (c) 2011 The LevelDB Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
#include "rocksdb/env.h"
#include <stdint.h>
-#include <Windows.h>
+#include <windows.h>
namespace rocksdb {
WinLogger& operator=(const WinLogger&) = delete;
- void close();
-
void Flush() override;
using rocksdb::Logger::Logv;
void DebugWriter(const char* str, int len);
+protected:
+
+ Status CloseImpl() override;
+
private:
HANDLE file_;
uint64_t (*gettid_)(); // Return the thread id for the current thread
Env* env_;
bool flush_pending_;
+ Status CloseInternal();
+
const static uint64_t flush_every_seconds_ = 5;
};