Posts

All about C++ standards

C++ is standardized by an ISO working group known as JTC1/SC22/WG21. So far, it has published six revisions of the C++ standard and is currently working on the next revision, C++23. In 1998, the ISO working group standardized C++ for the first time as ISO/IEC 14882:1998, which is informally known as C++98. In 2003, it published a new version of the C++ standard called ISO/IEC 14882:2003, which fixed problems identified in C++98. The next major revision of the standard was informally referred to as "C++0x", but it was not released until 2011. C++11 (14882:2011) included many additions to both the core language and the standard library. In 2014, C++14 (also known as C++1y) was released as a small extension to C++11, featuring mainly bug fixes and small improvements.[37] The Draft International Standard ballot procedures completed in mid-August 2014. After C++14, a major revision C++17, informally known as C++1z, was completed by the ISO C++ Committee in mid July 2017 and was ap...

NetBackup Upgrade Procedure

DISCLAIMER: This post is just to give quicker picture of overall key things to consider for upgrading NetBackup servers. Before doing actual upgrade please refer official NetBackup guides. The below information is tried & tested for all versions between 8.0 till 10.0 [1] Prerequisites / Planning: ======================= 1) For Windows, Make sure that all the Microsoft Windows OS and security updates are installed. 2) create a non-root SERVICE USER before upgarde. 3) MSDP rolling conversion - 7.7.x/8.0 TO 8.1 UPGRADE includes this. - It works in background to convert all existing data containers to AES encryption & SHA-2 Fingerprint algorithm. - No manual intervention is required. - After upgrade, it begins to work in background. 4) If the NetBackup PBX is running in secure mode, please add the web service user as authorized user in PBX. https://www.veritas.com/content/support/en_US/article.100032858 5) Review & confirm all OS requirements for Linux...

Segment Trees

Image
What is segment tree? Segment Tree is used in cases where there are multiple range queries on array and modifications of elements of the same array. For example, finding the sum of all the elements in an array from indices L to R, or finding the minimum (famously known as Range Minimum Query problem) of all the elements in an array from indices L to R. A segment tree is a heap-like data structure that can be used for making update/query operations upon array intervals in logarithmic time. We define the segment tree for the interval [i, j] in the following recursive manner: the first node will hold the information for the interval [i, j] if i<j the left and right son will hold the information for the intervals [i, (i+j)/2] and [(i+j)/2+1, j] Notice that the height of a segment tree for an interval with N elements is [logN] + 1. Here is how a segment tree for the interval [0, 9] would look like: Some easy problems to exercise your segment trees knowledge: Range sum query - mutable M...

Dynamic Programming

What is Dynamic Programming? Dynamic programming (usually referred to as  DP  ) is a very powerful technique to solve a particular class of problems. It demands very elegant formulation of the approach and simple thinking and the coding part is very easy. The idea is very simple, If you have solved a problem with the given input, then save the result for future reference, so as to avoid solving the same problem again.  shortly  'Remember your Past'  :)  Now you should ask, How it's different than Divide & conquer method, right? - The answer is very simple, There is only one key difference, In Divide and conquer method once you solve one particular sub-problem then you do not encounter it again, simply non-overlapping sub-problems.  In D&Q, we divide the problem in to non-overlapping sub-problems and solve them independently, like in MergeSort and QuickSort . - Whereas, if you find there are many overlapping sub-problems, then it's a ...

Netbackup Cloudpoint Installation and uninstallation steps

 Installation Steps:     1) Install Docker on linux  setup. https://help.veritas.com/vxhelp6/#/content?id=136496668-138126296-0%2Fv133632807-138126296&date=Tue%20Aug%2004%202020%2012:16:11%20GMT%200530%20(India%20Standard%20Time) If u face issue in installation then make below change Edit the /etc/selinux/config configuration file and modify the SELINUX parameter value to SELINUX=disable       2)Download CP build from here Please use the CP builds from this location: http://artifactory-master.engba.veritas.com/artifactory/cloud-data-protect/flexsnap/9.0.1.0 .<build#>/buildarea/ship/ VRTScloudpoint-docker-9.0.1.0.<build#>.img.gz 3) Command to install cloudpoint docker ex wget --no-check-certificate  https://artifactory-master.engba.veritas.com/artifactory/cloud-data-protect/flexsnap/9.0.1.0.9029/buildarea/ship/VRTScloudpoint-docker-9.0.1.0.9029.img.gz      3.a) docker load -i  VRTScloudpoint-d...

Learn Docker in 2 minutes

What is a Docker?     - Its just a way to package a software so it can work on any hardware.     - Inorder to understand how that process works, you must know this 3 key things:       1. DOCKERFILE - A docker file is a blue print for building a docker image.      2. IMAGE - A docker image is a template for running container.      3. CONTAINER . - A container is just a running process.   Installing and tooling :     -  If you are on MAC or Windows you can install "Docker Desktop" application. It supports both GUI and CLI.     docker ps: - it gives you list of all running containers.     - install Docker extension for vscode or your IDE: This will give you language support when you write docker files. Also link up to remote registries and bunch of other stuffs. The DOCKERFILE:       - which contains code to build your docker image and ...