const mysql = require('mysql');

const config = {
  connectionLimit: 10,
  host: "localhost",
  user: "dev",
  password: "Sanjudev94$$;",
  port: 3306,
  database: "mydb"
};
// const config = {
//   user: process.env.DB_USER || 'dev',
//   database: process.env.DB_NAME || 'arenaJune-db',
//   password: process.env.DB_PASS ||'Arena2025$',
//   host: process.env.DB_HOST ||'127.0.0.1'
// };

// // Use socketPath for App Engine connection
// if (process.env.NODE_ENV === 'production') {
//   config.socketPath = `/cloudsql/arenaexpos2025:asia-south1:arenajune2025-db`;
// } else {
//   config.host = '127.0.0.1'; // For local testing with Cloud SQL Proxy
// }
// let db;

// function handleDisconnect() {
//   db = mysql.createConnection(config);

//   db.connect(err => {
//     if (err) {
//       console.error('Error connecting to Cloud SQL:', err);
//       setTimeout(handleDisconnect, 2000);
//       return;
//     }
//     console.log('Connected to Cloud SQL');
//   });

//   db.on('error', err => {
//     console.error('Database error:', err);
//     if (err.status === '404' || err.fatal) {
//       handleDisconnect();
//     } else {
//       throw err;
//     }
//   });
// }

// handleDisconnect();
const db = mysql.createPool(config);

// Verify pool connection
db.getConnection((err, connection) => {
  if (err) {
    console.error('Error connecting to MySQL pool:', err);
    process.exit(1);
  }
  console.log('Connected to MySQL pool');
  connection.release();
});

module.exports = db;