Elasticsearch status "elasticsearch dead but pid file exists"

Hi,
I am trying to start master node of elasticsearch.
It stops suddenly and shows status as "elasticsearch dead but pid file exists"
I deleted pid file then it says syslock is locked. I deleted the same again it start saying "elasticsearch dead but pid file exists"

log file is blank.
What might be the reason?

br,
Sunil

What version, what does your config look like?

version 1.5.2
elasticsearch.yml

    ################################### Cluster ###################################
    
    # Cluster name identifies your cluster for auto-discovery. If you're running
    # multiple clusters on the same network, make sure you're using unique names.
    #
    cluster.name: presit-elasticsearch
    
    
    #################################### Node #####################################
    
    # Node names are generated dynamically on startup, so you're relieved
    # from configuring them manually. You can tie this node to a specific name:
    
    node.name: "presit-data-Node-2"
    
    # Every node can be configured to allow or deny being eligible as the master,
    # and to allow or deny to store the data.
    #
    # Allow this node to be eligible as a master node (enabled by default):
    #
    node.master: true
    #
    # Allow this node to store data (enabled by default):
    #
    node.data: true
    
    # You can exploit these settings to design advanced cluster topologies.
    #
    # 1. You want this node to never become a master node, only to hold data.
    #    This will be the "workhorse" of your cluster.
    #
    #node.master: false
    #node.data: true
    #
    # 2. You want this node to only serve as a master: to not store any data and
    #    to have free resources. This will be the "coordinator" of your cluster.
    #
    #node.master: true
    #node.data: false
    #
    # 3. You want this node to be neither master nor data node, but
    #    to act as a "search load balancer" (fetching data from nodes,
    #    aggregating results, etc.)
    #
    #node.master: false
    #node.data: false
    

      
    
    #################################### Index ####################################
    
    
    # Set the number of shards (splits) of an index (5 by default):
    #
    index.number_of_shards: 3
    
    # Set the number of replicas (additional copies) of an index (1 by default):
    #
    index.number_of_replicas: 2
    
    # Note, that for development on a local machine, with small indices, it usually
    # makes sense to "disable" the distributed features:
    #
    #index.number_of_shards: 1
    #index.number_of_replicas: 0

    
    #################################### Paths ####################################
    
 
    path.data: /elasticsearch
    
   #path.data: /path/to/data1,/path/to/data2
    
    # Path to temporary files:
    #
    #path.work: /path/to/work
    
     
    ################################## Security ################################
  
    http.cors.allow-origin: "/.*/"
    http.cors.enabled: true
    bootstrap.mlockall: true

I'd try to run the ES binary directly and see what it reports.