Skip to Content
Technical Articles
Author's profile photo Sai Kumar Dudala

How to Reclaim size of volume “/hana/log” when it is full.

How to reclaim or shrink the log volume size of HANA DB in /hana/log storage.

Introduction –

Whenever we notice, that the HANA database does not accept any of the new requests to perform it is confirm that the log volume is full for that database. In such cases we need to truncate or shrink or reclaim the unused space on log volume for HANA db. This procedure is explained thoroughly in this blog.

 

Main Part –

Process of reclaiming the HANA log file system

  • We have observed that the /hana/log volume size is full in our linux server as shown in the image below.

Here, in this screen it is clear that the volume size for /hana/log is 100% full, due to which we are not allowed to perform any tasks on this particular database.

  •  Now login to OS level and try stopping the application’s running in this database.

use command “sapcontrol -nr $$ -function StopSystem” for stopping the application where $$ indicates the unique instance number on which the application is installed.

After stopping all the instances running on the multi-tenant database.

  • Connect to the Database through HANA Studio and run following command.

“ALTER SYSTEM RECLAIM LOG;”

  • After successful execution of this command check for the volume size for /hana/log

Now it is clear from the screen that the volume size for /hana/log is good – used 21% only.

Conclusion –

By this way we can reclaim the unused amount of log volume in HANA DB. It is better to perform this kind of activity at-least once in every month or depends on the usage and growth of log size.

 

Reference –

2083715 – Analyzing log volume full situations
1679938 – Disk Full Event on Log Volume

Assigned Tags

      15 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo VenkataRao Daggupati
      VenkataRao Daggupati

      i have one question here, after stopping the HANA, how will you connect Sql console in HANA DB?

      Author's profile photo Doudou Ntumba
      Doudou Ntumba

      I have the same question

      Author's profile photo Sai Kumar Dudala
      Sai Kumar Dudala
      Blog Post Author

      Sorry for delayed response, thank you for your response. Here we are turning off SAP Application but not HANA DB.

      Author's profile photo Sai Nagu Putti
      Sai Nagu Putti

      I belive Sai Kumar had only stopped sap application servers but not the HANA DB. HANA DB has to up and running inorder to shrink Disk volumes.

      Author's profile photo Sai Kumar Dudala
      Sai Kumar Dudala
      Blog Post Author

      Thank you Sai for your comments, yes you are correct.

      Author's profile photo Hummel Christian
      Hummel Christian

      And how to start HANA when it does not start because of log full?

      Author's profile photo Ravinder Reddy Vangala
      Ravinder Reddy Vangala

      when log volume is 100% full, it is a hung situation. DB will not allow any connections. So alter system reclaim log will not work.

      To fix the log volume full situation

      1. stop the database
      2. move few of the log segments to new location and create the soft link
      3. start the database
      4. check the status of the log segments.
      5. select status from m_log_segments.
      6. if the status of the log segments is 'free'  then execute 'alter system reclaim log'  to clear the space. i.e alter system reclaim log works only if the status of the log segment is ' free'
      7. if the status is not free, then check the log backups if they are working fine.

       

      Author's profile photo Sai Kumar Dudala
      Sai Kumar Dudala
      Blog Post Author

      Hi Ravi,

      Is that possible to move to log segments to different location?

      Author's profile photo Srinu Thutta
      Srinu Thutta

      Yes, its possible buddy, you have to create the soft link.

      Srinu Thutta

      Author's profile photo Madhur Chichani
      Madhur Chichani

      Hello

       

      thanks for detailed explanation.

       

      Incase of HA/DR  when replication is active.. How to run reclaim ccommand?

      Do we need to break the replication and run the command ?

       

      kindly advise

       

      thanks

      Madhur

      Author's profile photo Sankara Bavirisetti
      Sankara Bavirisetti

      1679938 - DiskFullEvent on Log Volume

      Author's profile photo Grupo Middleware LAM Grupo Middleware LAM
      Grupo Middleware LAM Grupo Middleware LAM

      thak you  very mucho from Argentina and Venezuela.

      Author's profile photo Thangaraju Natarajan
      Thangaraju Natarajan

      Hi All,

      Its clear to do in hana studio, But I have do in OS by linux command,

      Can anyone help me to do...

      Thanks & regards

      M Ragul

      Author's profile photo SAI RAM
      SAI RAM

      Hello,

      Connect the system DB in OS using command

      su - sidadm

      hdbsql -i <instance no> -d SystemDB -u SYSTEM -p <password>

      and then

      ALTER SYSTEM RECLAIM LOG;

      go

       

      Author's profile photo Vishal Kumar
      Vishal Kumar

      Is there a way to check from application side that my application can result in max utilization of the log volume ? If I can know beforehand, then my application can avoid such situation